关于C#:确定list.indexof忽略大小写

Determine List.IndexOf ignoring case

本问题已经有最佳答案,请猛点这里访问。

有没有一种方法可以在不区分大小写搜索的列表中获取项目的索引?

1
2
List<string> sl = new List<string>() {"a","b","c"};
int result = sl.IndexOf("B"); // should be 1 instead of -1


尝试这样做:所以没有直接的方法来使用indexof和list的字符串比较选项,为了获得想要的结果,您需要使用lambda表达式。

1
int result = sl.FindIndex(x => x.Equals("B",StringComparison.OrdinalIgnoreCase));

C中字符串的indexof方法有一个comparisonType参数,它的工作方式如下:

1
sl.IndexOf("yourValue", StringComparison.CurrentCultureIgnoreCase)

1
sl.IndexOf("yourValue", StringComparison.OrdinalIgnoreCase)

有关这方面的文档可以在这里找到