找到无与伦比的字符串

时间:2012-03-30 05:25:48

标签: c#

让我们说我有两个字符串:

  1. “系统处于暂停状态。”

  2. “系统处于[A]状态。”

  3. 是否有可能找到两个字符串之间的差异,我需要[A]和暂停作为输出。

    截至目前,我正在分割每个单词并检查匹配。

    有没有更好的方法......?

3 个答案:

答案 0 :(得分:1)

string a =“系统处于暂停状态。”;             string b =“系统处于[A]状态。”;

        var vardiff =( a.Split(new char[] { ' ' }).Except(b.Split(new char[] { ' ' }))).ToList<string>();
        var vardiff1 = (b.Split(new char[] { ' ' }).Except(a.Split(new char[] { ' ' }))).ToList<string>();

答案 1 :(得分:0)

检查出来:Diff Algorithm

另外:Longest common subsequence

此处还介绍了一个实现:sample code

答案 2 :(得分:0)

真的,问题并不完全清楚“差异”是什么意思。是简单的字符数相同,还是比较不匹配字符串的更具启发性的方式?

您可能想要探索的一种算法是Approximate String Comparisons Using Levenshtein Distance