【发布时间】:2017-04-07 10:37:35
【问题描述】:
请帮我在java中实现字符串相似度比较! 使用 org.apache.commons.codec.language.Soundex 库
Soundex soundex = new Soundex();
String phoneticValue = soundex.encode("YourString");
String phoneticValue2 = soundex.encode("YourStrink");
if(phoneticValue.equals(phoneticValue2)){
}
似乎不起作用。在字符串相似的情况下,Encode 函数会给出不同的结果。 如何将两个相似的字符串与这个库进行比较?
期待很快收到您的来信! ;)
【问题讨论】:
-
YourString != YourStrink
-
就是这样。我需要比较实际上不相同的相似字符串
-
这很奇怪,我很奇怪,正如您可能已经从我对 soundex 完全不熟悉的第一条评论中发现的那样,但是当我用您的代码运行一个简单的测试用例时,两个值都相等。我使用了 commons-codec v1.5
-
两个值都被编码为 Y623。
-
我用的和你一样,唯一的区别可能是版本(我用的是1.5版)maven依赖在这里mvnrepository.com/artifact/commons-codec/commons-codec/1.5