读书人

怎么计算2个字符串的相似度

发布时间: 2012-09-10 11:02:32 作者: rapoo

如何计算2个字符串的相似度
例如str1="abcd abcd";
str2="abcd abdc";
怎样计算这两个字符串的相似程度,谢谢…

[解决办法]
给你一个计算相似度的算法

C# code
/// <summary>/// 获取两个字符串的相似度/// </summary>/// <param name=”sourceString”>第一个字符串</param>/// <param name=”str”>第二个字符串</param>/// <returns></returns>public static decimal GetSimilarityWith(this string sourceString, string str){decimal Kq = 2;decimal Kr = 1;decimal Ks = 1;char[] ss = sourceString.ToCharArray();char[] st = str.ToCharArray();//获取交集数量int q = ss.Intersect(st).Count();int s = ss.Length  q;int r = st.Length  q;return Kq * q / (Kq * q + Kr * r + Ks * s);}
[解决办法]
C#实现字符串相似度比较[Levenshtein Distance算法]

读书人网 >C#

热点推荐