где
ПРИМЕЧАНИЕ
Дополнительные сведения о способах сравнения и поиска символьных строк, включая и особое значение выбора подходящего способа, приведены в главе 22, где подробно рассматривается обработка строк.
Обратите также внимание на методы ToUpper () и ToLower (), преобразующие содержимое строки в символы верхнего и нижнего регистра соответственно. Их формы, представленные в табл. 7.1, содержат параметр Culture Inf о, относящийся к классу, в котором описываются атрибуты культурной среды, применяемые для сравнения. В примерах, приведенных в этой книге, используются текущие настройки культурной среды (т.е. текущие языковые и региональные стандарты). Эти настройки указываются при передаче методу аргумента Culturelnf о . CurrentCulture. Класс Culturelnfо относится к пространству имен System. Globalization. Любопытно, имеются варианты рассматриваемых здесь методов, в которых текущая культурная среда используется по умолчанию, но во избежание неоднозначности в примерах из этой книги аргумент Culturelnf о . CurrentCulture указывается явно.
Объекты типа string содержат также свойство Length, где хранится длина строки.
Таблица 7.1. Некоторые общеупотребительные методы обращения со строками
Описание
Метод
static int Compare(string
bool Equals(string
int IndexOf(char
int IndexOf(string
Возвращает отрицательное значение, если строка
int LastlndexOf(string
string ToLower(Culturelnfo. CurrentCulture
string ToUpper(Culturelnfo. CurrentCulture
Осуществляет поиск в вызывающей строке последнего вхождения символа, определяемого аргументом
Возвращает вариант вызывающей строки в нижнем регистре. Способ преобразования определяется аргументом
Возвращает вариант вызывающей строки в верхнем регистре. Способ преобразования определяется ар-гументом
Отдельный символ выбирается из строки с помощью индекса, как в приведенном ниже фрагменте кода.
string str = 'тест';
Console.WriteLine(str [0] ) ;
В этом фрагменте кода выводится символ 'т', который является первым в строке 'тест'. Как и в массивах, индексирование строк начинается с нуля. Следует, однако, иметь в виду, что с помощью индекса нельзя присвоить новое значение символу в строке. Индекс может служить только для выборки символа из строки.
Для проверки двух строк на равенство служит оператор ==. Как правило, если оператор == применяется к ссылкам на объект, то он определяет, являются ли они ссылками на один и тот же объект. Совсем иначе обстоит дело с объектами типа string. Когда оператор == применяется к ссылкам на две строки, он сравнивает содержимое этих строк. Это же относится и к оператору ! =. В обоих случаях выполняется порядковое сравнение. Для проверки двух строк на равенство с учетом культурной среды служит метод Equals (), где непременно нужно указать способ сравнения в виде аргумента StringComparison . CurrentCulture. Следует также иметь в виду, что метод Compare () служит для сравнения строк с целью определить отношение порядка, например для сортировки. Если же требуется проверить символьные строки на равенство, то для этой цели
