Таблица 7.1. Некоторые общеупотребительные методы обращения со строками Метод Описание static int Compare(string strA, string strB, StringComparison comparisonType) Возвращает отрицательное значение, если строка strA меньше строки strB; положительное значение, если строка strA больше строки strВ; и нуль, если сравниваемые строки равны. Способ сравнения определяется аргументом comparisonType bool Equals(string value, StringComparison comparisonType) Возвращает логическое значение true, если вызывающая строка имеет такое же значение, как и у аргумента value. Способ сравнения определяется аргументом comparisonType int IndexOf(char value) Осуществляет поиск в вызывающей строке первого вхождения символа, определяемого аргументом value. Применяется порядковый способ поиска. Возвращает индекс первого совпадения с искомым символом или -1, если он не обнаружен int IndexOf(string value, StringComparison comparisonType) Осуществляет поиск в вызывающей строке перво го вхождения подстроки, определяемой аргументом value. Возвращает индекс первого совпадения с искомой подстрокой или -1, если она не обнаружена. Способ поиска определяется аргументом comparisonType int LastIndexOf(char value) Осуществляет поиск в вызывающей строке последнего вхождения символа, определяемого аргументом value. Применяется порядковый способ поиска. Возвращает индекс последнего совпадения с искомым символом или -1, если он не обнаружен int LastIndexOf(string value, StringComparison comparisonType) Осуществляет поиск в вызывающей строке последнего вхождения подстроки, определяемой аргументом value. Возвращает индекс последнего совпадения с искомой подстрокой или -1, если она не обнаружена. Способ поиска определяется аргументом comparisonType string ToLower(CultureInfo.CurrentCulture culture) Возвращает вариант вызывающей строки в нижнем регистре. Способ преобразования определяется аргументом culture string ToUpper(CultureInfo.CurrentCulture culture) Возвращает вариант вызывающей строки в верхнем регистре. Способ преобразования определяется аргументом culture
Отдельный символ выбирается из строки с помощью индекса, как в приведенном ниже фрагменте кода. string str = "тест"; Console.WriteLine(str[0]);
В этом фрагменте кода выводится символ "т", который является первым в строке "тест". Как и в массивах, индексирование строк начинается с нуля. Следует, однако, иметь в виду, что с помощью индекса нельзя присвоить новое значение символу в стро ке. Индекс может служить только для выборки символа из строки.
Для проверки двух строк на равенство служит оператор ==. Как правило, если опе ратор == применяется к ссылкам на объект, то он определяет, являются ли они ссыл ками на один и тот же объект. Совсем иначе обстоит дело с объектами типа string. Когда оператор == применяется к ссылкам на две строки, он сравнивает содержимое этих строк. Это же относится и к оператору !=. В обоих случаях выполняется поряд ковое сравнение. Для проверки двух строк на равенство с учетом культурной среды служит метод Equals, где непременно нужно указать способ сравнения в виде ар гумента StringComparison.CurrentCulture. Следует также иметь в виду, что ме тод Compare служит для сравнения строк с целью определить отношение порядка, например для сортировки. Если же требуется проверить символьные строки на ра венство, то для этой цели лучше воспользоваться методом Equals или строковыми операторами.