我有两个字符串数组,我需要比较相似的字符串。
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
请告诉我如何解决此错误。
答案 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);
}
});