// Продемонстрировать применение метода Contains().
using System;
class ContainsDemo {
static void Main() {
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 value) - Возвращает логическое значение true,если вызывающая строка содержит подстроку value. Если же подстрока value не обнаружена, возвращается логическое значение false
public bool EndsWith(string value) - Возвращает логическое значение* true,если вызывающая строка оканчивается подстрокой value. В противном случае возвращает логическое значение false
public bool EndsWith(string value, StringComparison comparisonType) - Возвращает логическое значение true,если вызывающая строка оканчивается подстрокой value. В противном случае возвращает логическое значение false.Параметр comparisonType определяет конкретный способ поиска
public bool EndsWith(string value, bool ignoreCase, Culturelnfo culture) - Возвращает логическое значение true,если вызывающая строка оканчивается подстрокой value , иначе возвращает логическое значение false.Если параметр ignoreCase принимает логическое значение true,то при сравнении не учитываются различия между прописным и строчным вариантами букв. В противном случае эти различия учитываются. Поиск осуществляется с использованием информации о культурной среде, обозначаемой параметром culture
public int IndexOf(char value) - Возвращает индекс первого вхождения символа value в вызывающей строке. Если искомый символ не обнаружен, то возвращается значение -1
public int IndexOf(string value) - Возвращает индекс первого вхождения подстроки value в вызывающей строке. Если искомая подстрока не обнаружена, то возвращается значение -1
public int IndexOf(char value, int startlndex) - Возвращает индекс первого вхождения символа value в вызывающей строке. Поиск начинается с элемента, указываемого по индексу startlndex. Метод возвращает значение -1, если искомый символ не обнаружен
public int IndexOf(string value, int startlndex) - Возвращает индекс первого вхождения подстроки value в вызывающей строке. Поиск начинается с элемента, указываемого по индексу startlndex. Метод возвращает значение -1, если искомая подстрока не обнаружена
public int IndexOf(char value, int startlndex, int count) - Возвращает индекс первого вхождения символа valueв вызывающей строке. Поиск начинается с элемента, указываемого по индексу startlndex , и охватывает число элементов, определяемых параметром count. Метод возвращает значение -1, если искомый символ не обнаружен
public int IndexOf(string value, int startlndex, int count) - Возвращает индекс первого вхождения подстроки value в вызывающей строке. Поиск начинается с элемента, указываемого по индексу startlndex , и охватывает число элементов, определяемых параметром count. Метод возвращает значение -1, если искомая подстрока не обнаружена public int
Читать дальше