我想计算一些给定的单词或短语在文本中出现的次数,但我想使用一些字符串相似性算法。
每个单词或表达式都有一个值,因此我将根据找到的单词数等设置文本的相关性。
我想java的String
类不能提供这个功能。我将需要迭代所有的文字为每个词或表达式,我想找到?
有文本处理库吗?
例如:查找包含“电子游戏”、“我有一个电子游戏”之类内容的文本,计算类似的表达式。我想如果我为每个需要求值的单词或表达式迭代,我找不到类似的单词,而且速度会更慢。
最佳答案
但我想用一些字符串相似度算法。
看看Lucene。允许您索引一些文本并使用相似性算法查找作品我想你应该把每个单词分开,用lucene索引。然后,对于你感兴趣的所有单词,你可以搜索索引。你可以做一些像Automobile~
这样的事情来进行模糊搜索。下面是一个粗略的算法:
for each word in STRING.split(' ')
index word
for each word in your list
search for word and look for number of occurrences