列表';除了';比较-忽略大小写

本文关键字:大小写 除了 列表 比较 | 更新日期: 2023-09-27 18:20:40

我有两个列表,我想比较它们并获得差异,同时忽略任何情况的差异。

我使用以下代码来获得两个列表之间的差异,但它并没有忽略大小写的差异。

IEnumerable<string> diff = list1.Except(list2);
List<string> differenceList = diff.ToList<string>();

我试过这个:

IEnumerable<string> diff = list1.Except(list2, StringComparison.OrdinalIgnoreCase);

但是Except似乎没有进行那种字符串大小写检查(所以是错误的)。我希望有一个工作。

列表';除了';比较-忽略大小写

试试这个:)

List<string> except = list1.Except(list2, StringComparer.OrdinalIgnoreCase).ToList();

为我工作!

以下是工作原理:

IEnumerable<string> differenceQuery = inputTable.Except(strArrList,
                                                        StringComparer.OrdinalIgnoreCase);

使用StringComparer而不是StringComparison

使用StringComparer,如下所示

代码:

list3 = list1.Except(list2,StringComparer.OrdinalIgnoreCase);