我有两个列表,我想比较它们并获得差异,同时忽略任何案例差异。
我使用以下代码来获取两个列表之间的差异,但它不会忽略大小写差异。
IEnumerable<string> diff = list1.Except(list2);
List<string> differenceList = diff.ToList<string>();
我试过了:
IEnumerable<string> diff = list1.Except(list2, StringComparison.OrdinalIgnoreCase);
但是,似乎没有对该类型的字符串大小写检查(所以错误)。我希望有一个解决方法。
答案 0 :(得分:30)
试试这个:)
List<string> except = list1.Except(list2, StringComparer.OrdinalIgnoreCase).ToList();
为我工作!
答案 1 :(得分:9)
以下是有效的:
IEnumerable<string> differenceQuery = inputTable.Except(strArrList,
StringComparer.OrdinalIgnoreCase);
使用StringComparer
代替StringComparison
。
答案 2 :(得分:-1)
使用StringComparer
list3 = list1.Except(list2,StringComparer.OrdinalIgnoreCase);