模糊匹配无序字符串

时间:2013-01-08 07:03:27

标签: java string fuzzy fuzzy-comparison

我有一堆字符串,在措辞上是完全随机的,我需要找到与关键字最匹配的字符串。我尝试过使用三胞胎和Levenshtein的算法,但我仍然得到不规则的结果。我尝试用它的第一个字符排序字符串,然后运行Levenshtein的算法,这样我就能得到更准确的结果,但这没有用。

我的关键字可能是每个1-3个单词,但我想要匹配的目标字符串有时> 10-20个单词。是否还有其他可以使用的算法可以有效地将关键字与正确的字符串匹配?

Triplets方法我尝试使用它:

ratio = (3*|A ∩ B|)/(|A| + |B|)

其中A和B是三元组的数组(一个单词的3个字符,通过索引1生成),例如

stackoverflow -> sta, tac, ack, cko, kov, ove, ver, erf, rfl, flo, low

和A∩B是A和B中类似的三元组。这种方法似乎很有效,但它最终给了我很多不规则的结果。

那么有没有办法改进这种模糊匹配?

0 个答案:

没有答案