Есть ли способ получить индекс элемента в списке с регистро-независимым поиском?Определить List.IndexOf игнорировать регистр
List<string> sl = new List<string>() { "a","b","c"};
int result = sl.IndexOf("B"); // should be 1 instead of -1
Есть ли способ получить индекс элемента в списке с регистро-независимым поиском?Определить List.IndexOf игнорировать регистр
List<string> sl = new List<string>() { "a","b","c"};
int result = sl.IndexOf("B"); // should be 1 instead of -1
Попробуйте следующее: Таким образом, нет прямого способа использовать IndexOf со String Comparison для LIST, для достижения результата результата вам нужно использовать выражение Lambda.
int result = sl.FindIndex(x => x.Equals("B",StringComparison.OrdinalIgnoreCase));
Вы можете использовать IndexOf()
метод, который принимает в StringComparison
типа:
string s = "foobarbaz";
int index = s.IndexOf("BAR", StringComparison.CurrentCultureIgnoreCase); // index = 3
Если строка не найдена, возвращается IndexOf()
-1
.
Метод IndexOf для струнных C# имеет ComparisonType аргумент, который должен работать что-то вроде этого:
sl.IndexOf("yourValue", StringComparison.CurrentCultureIgnoreCase)
или
sl.IndexOf("yourValue", StringComparison.OrdinalIgnoreCase)
Как @ c0rd сказал в ответ на другой ответ на эту тему, это не про' string', это около ' Список
это не про 'string', это про' 'Список –
c0rd