我需要在文件列表中执行基于内容/关键字的搜索。为此,我需要提取keywords
并将它们存储在MySQL
数据库中。关键字以以下方式提取:
- 读取文件内容
-
使用删除特殊字符和额外的空白(如果有的话)
Regex.Replace(input, "[^a-zA-Z0-9_]+", " ")
-
删除
am/is/are/be/being/been/
、have/has/having/had/
、do/does/doing/did/
、adjectives
、phrases
、Adverbs
等。 -
删除结尾,如:
-IC-ATION fortification -IC-ITY electricity -IC-MENT fantastically -AT-IV contemplative -AT-OR conspirator -IV-ITY relativity -IV-MENT instinctively -ABLE-ITY incapability -ABLE-MENT charitably -OUS-MENT famously
我能用一个Regular expression
完成整个操作吗?他们有最简单的方法吗?这里我有一个参考算法,用于这个操作。
我认为不可能只使用正则表达式来实现词干算法。也许您应该看看已经存在的实现来获得想法。以下是VB.net 中Porter词干算法的链接