包含忽略大小写的方法

时间:2014-06-03 23:35:45

标签: c# .net

我有两个字符串数组,我需要比较相似的字符串。

string[] f1 = {"Ann", "mam", "far", "aBc"};
string[] f2 = {"ann", "nom", "far", "abc"};

Parallel.ForEach(f1, currenFile =>
{
    if (f2.Contains(currenFile, StringComparison.OrdinalIgnoreCase))
    {
        Console.WriteLine("matchfound"+currenFile);
    }
});

我试图看看f2是否包含来自f1忽略大小写的单词。但是,知识产权在“StringComparison.OrdinalIgnoreCase”上说错误

  

参数类型System.StringComparission不能分配给参数类型Systems.Collections.Generic.IEqualityComparer

请告诉我如何解决此错误。

1 个答案:

答案 0 :(得分:5)

我使用

修复了VS2013中的错误
StringComparer.OrdinalIgnoreCase

而不是

StringComparison.OrdinalIgnoreCase

或者,您可以尝试以下方法:

string[] f1 = { "Ann", "mam", "far", "aBc" };
string[] f2 = { "ann", "nom", "far", "abc" };
Parallel.ForEach(f1, currentFile =>
{
    if (f2.Any(comparisonFile => String.Compare(currentFile, comparisonFile, StringComparison.OrdinalIgnoreCase) == 0))
    {
        Console.WriteLine("matchfound" + currentFile);
    }
});