Val*_*yon 11 c# diff windows-phone-7
我当前正在寻找一种简单而轻量级的算法来比较两个简单的字符串.
例如,如果我们采用这两个字符串:
它应该告诉我第二个单词的2个第一个字母是不同的,等等.
现在我有一个非常简单的算法来比较单词:
/// <summary>
/// Make a diff between two strings and returns words indices
/// </summary>
/// <param name="a"></param>
/// <param name="b"></param>
/// <returns></returns>
public static List<int> Diff(string a, string b)
{
List<int> indices = new List<int>();
string[] asplit = a.Split(' ');
string[] bsplit = b.Split(' ');
for (int i = 0; i < asplit.Length; i++)
{
if (bsplit.Length > i)
{
if (asplit[i].CompareTo(bsplit[i]) != 0)
{
indices.Add(i);
}
}
}
return indices;
}
Run Code Online (Sandbox Code Playgroud)
所以这将告诉我哪些单词(使用空格字符的分割)是不同的.
我在这里阅读了很多关于实现复杂算法或使用现有库的主题.
但是我通过.NET紧凑框架(WP7)进行了重新训练,我不会想要比较两个文件或两个文本,我只需要一个单词比较.
有没有适合的库或算法?谢谢 :).