给定两个字符串text1
and text2
:
public SOMEUSABLERETURNTYPE Compare(string text1, string text2)
{
// DO SOMETHING HERE TO COMPARE
}
例子:
-
第一个字符串:StackOverflow
第二个字符串:堆栈溢出
返回:相似度91%
回报可以是%或类似的东西。
-
第一个字符串:简单文本测试
第二个字符串:复杂文本测试
返回:值可以被认为是相等的
有任何想法吗?做这个的最好方式是什么?
有多种不同的方法可以做到这一点。看看维基百科“字符串相似性度量”页面 http://en.wikipedia.org/wiki/Category:String_similarity_measures用于使用算法链接到其他页面。
I don't think然而,这些算法中的任何一个都会考虑声音 - 因此“staq溢出”将与“堆栈溢出”和“staw溢出”相似,尽管第一个在发音方面更相似。
我刚刚发现另一页 http://www.dcs.shef.ac.uk/~sam/stringmetrics.html这提供了更多的选择......特别是,Soundex http://www.dcs.shef.ac.uk/~sam/stringmetrics.html#soundex算法 (维基百科 http://en.wikipedia.org/wiki/Soundex)可能更接近您所追求的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)