我正在寻找一个库/类,可以对两个字符串进行智能比较。充其量,它会给出两个字符串相似程度的百分比结果。我正在比较公司名称,地址记录在不同的存储库中,因此在名称中有许多拼写错误或不一致。
要比较的示例字符串:
"Good Company Ltd." vs. "GoodCompany"
"Baker Street 2" vs. "Baker Str. 2" 如果我得到了相似度百分比结果,那么这可以作为智能合并这类数据的输入。
你知道有什么好的库可以实现这样的智能字符串比较吗?
发布于 2013-05-23 20:22:26
Levenshtein在这种情况下是不合适的。"Good Company Ltd“和"GoodCompany”的距离为3,而"Good Company Ltd“和"Food Ltd”的距离为1,但它们的含义完全不同。我建议使用Metaphone or Double Metaphone算法。
使用online metaphone comparer的结果是:
Good Company Ltd = KTKMPNLTT GoodCompany = KTKMPN食品有限公司= FTKMPNLTT GoodCompanyLLC = KTKMPNLK
这样你就知道GoodCompany,Good Company Ltd和GoodCompanyLLC是相似的,而Food Company拼写错误或者完全不相关(KTKMPN包含在KTKMPNLTT和KTKMPNLK中,但不包含在FTKMPNLTT中)。
在here上查看其他算法的比较。
https://stackoverflow.com/questions/16713292
复制相似问题