基于主要相似性计算字符串之间的相似性

时间:2013-03-07 15:44:46

标签: java string

我有两个这样的字符串:

String1: EnableAdvertResult 
String2:AdvertisementDel

然后我把它们分开了:

 X[0]=Enable X[1]=Advert X[2]=Result

 Y[0]=Advertisement Y[1]=Del

然后计算每对元素之间的相似性,如下所示:

sim(x[0],y[0])=a, 
sim(x[0],y[1])=b, 
sim(x[1],y[0])=c, 
sim(x[1],y[1])=d, 
sim(x[2],y[0])=e, 
sim(x[2],y[1])=f

现在我想知道,根据上面的sim,计算string1和string2之间相似性的最佳方法是什么?

2 个答案:

答案 0 :(得分:0)

它被称为Levenshtein距离。可以在Levenshtein距离c#找到C#代码。我相信你也可以找到java代码。

答案 1 :(得分:0)

你想要字符串之间的Levenshtein距离,这是在Apache StringUtils中实现的。我使用了Levenshtein的Apache版本,结果很好。另请参阅此Stackoverflow article有关字符串比较的信息。