Вопрос:
Возможный дубликат:
Нечувствительность к регистру содержит (строку)
С помощью метода Contains() класса String можно найти подстроку.
Как найти подстроку в строке без учета регистра?
Лучший ответ:
Вы можете использовать метод IndexOf(), который принимает тип StringComparison:
string s = «foobarbaz»; int index = s.IndexOf(«BAR», StringComparison.CurrentCultureIgnoreCase); // index = 3
Если строка не была найдена, IndexOf() возвращает -1.
Ответ №1
Там нет версии без учета регистра. Вместо этого используйте IndexOf (или регулярное выражение, хотя это не рекомендуется и излишне).
string string1 = «my string»; string string2 = «string»; bool isContained = string1.IndexOf(string2, StringComparison.OrdinalIgnoreCase) >= 0;
StringComparison.OrdinalIgnoreCase обычно используется для более “программируемого” текста, такого как пути или константы, которые вы могли сгенерировать, и является самым быстрым средством сравнения строк. Для текстовых строк, которые являются лингвистическими, используйте StringComparison.CurrentCultureIgnoreCase или StringComparison.InvariantCultureIgnoreCase.
Ответ №2
Содержит возвращает логическое значение, если найдено совпадение. Если вы хотите искать регистр без учета регистра, вы можете сделать исходную строку и строку совпадающими как с верхним регистром, так и с нижним регистром перед сопоставлением.
Пример:
if(sourceString.ToUpper().Contains(stringToFind.ToUpper())) { // string is found } Ответ №3
stringToSearch.ToLower().Contains(stringToSearchFor.ToLower())
Ответ №4string myString = «someTextorMaybeNot»; myString.ToUpper().Contains( «text».ToUpper() );