string str = "C# сочетает эффективность с производительностью.";
if(str.Contains("эффективность"))
Console.WriteLine("Обнаружена подстрока \"эффективность\".");
if(str.Contains("эффе"))
Console.WriteLine("Обнаружена подстрока \"эффе\".");
if(!str.Contains("эффективный"))
Console.WriteLine("Подстрока \"эффективный\" не обнаружена.");
}
}
Выполнение этой программы приводит к следующему результату.
Обнаружена подстрока "эффективность".
Обнаружена подстрока "эффе".
Подстрока "эффективный" не обнаружена.
Как следует из результата выполнения приведенной выше программы, методContains() осуществляет поиск на совпадение произвольной последовательности символов, а не только целых слов. Поэтому в вызывающей строке обнаруживается и подстрока"эффективность",и подстрока"эффе".Но поскольку в вызывающей строке отсутствует подстрока"эффективный",то она и не обнаруживается.
У некоторых методов поиска в строке имеются дополнительные формы, позволяющие начинать поиск по указанному индексу или указывать пределы для поиска в строке. В табл. 22.3 сведены все варианты методов поиска в строке, которые поддерживаются в классеString.
Таблица 22.3. Методы поиска в строке, поддерживаемые в классе String
Метод
Назначение
public bool Contains(string
public bool EndsWith(string
public bool EndsWith(string
public bool EndsWith(string
Возвращает логическое значение true, если вызывающая строка содержит подстроку
Возвращает логическое значение* true, если вызывающая строка оканчивается подстрокой
Метод
Назначение
public int
IndexOf(char
логическое значение false. Если параметр
public int
IndexOf(string
символа
public int
IndexOf(char
строки
символа
public int
IndexOf(string
иск начинается с элемента, указываемого по индексу
Возвращает индекс первого вхождения
int
подстроки
public int
IndexOf(char
Поиск начинается с элемента, указываемого по индексу
Возвращает индекс первого вхождения
int
символа value в вызывающей строке. По
public in.t
IndexOf(string