Объекты типа string
содержат также свойство Length
, где хранится длина строки.
Таблица 7.1. Некоторые общеупотребительные методы обращения со строками
Метод
Описание
static int Compare(string strA, string strB, StringComparison comparisonType)
Возвращает отрицательное значение, если строка strA меньше строки strB ; положительное значение, если строка strA больше строки strB ; и нуль, если сравниваемые строки равны. Способ сравнения определяется аргументом 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 LastlndexOf(char value)
Осуществляет поиск в вызывающей строке последнего вхождения символа, определяемого аргументом value. Применяется порядковый способ поиска. Возвращает индекс последнего совпадения с искомым символом или -1, если он не обнаружен
int LastlndexOf(string value, StringComparison comparisonType)
Осуществляет поиск в вызывающей строке последнего вхождения подстроки, определяемой аргументом value. Возвращает индекс последнего совпадения с искомой подстрокой или -1, если она не обнаружена. Способ поиска определяется аргументом comparisonType
string ToLower(Culturelnfo. CurrentCulture culture)
Возвращает вариант вызывающей строки в нижнем регистре. Способ преобразования определяется аргументом culture
string ToUpper(Culturelnfo. CurrentCulture culture)
Возвращает вариант вызывающей строки в верхнем регистре. Способ преобразования определяется аргументом culture
Отдельный символ выбирается из строки с помощью индекса, как в приведенном ниже фрагменте кода.
string str = "тест";
Console.WriteLine(str[0] ) ;
В этом фрагменте кода выводится символ "т", который является первым в строке "тест". Как и в массивах, индексирование строк начинается с нуля. Следует, однако, иметь в виду, что с помощью индекса нельзя присвоить новое значение символу в строке. Индекс может служить только для выборки символа из строки.
Для проверки двух строк на равенство служит оператор ==. Как правило, если оператор == применяется к ссылкам на объект, то он определяет, являются ли они ссылками на один и тот же объект. Совсем иначе обстоит дело с объектами типа string
. Когда оператор == применяется к ссылкам на две строки, он сравнивает содержимое этих строк. Это же относится и к оператору !=. В обоих случаях выполняется порядковое сравнение. Для проверки двух строк на равенство с учетом культурной среды служит метод Equals()
, где непременно нужно указать способ сравнения в виде аргумента StringComparison.CurrentCulture
. Следует также иметь в виду, что метод Compare()
служит для сравнения строк с целью определить отношение порядка, например для сортировки. Если же требуется проверить символьные строки на равенство, то для этой цели лучше воспользоваться методом Equals()
или строковыми операторами.
В приведенном ниже примере программы демонстрируется несколько операций со строками.
// Некоторые операции со строками.
using System;
using System.Globalization;
class StrOps {
static void Main() {
string strl = "Программировать в .NET лучше всего на С#.";
string str2 = "Программировать в .NET лучше всего на С#.";
string str3 = "Строки в C# весьма эффективны.";
string strUp, strLow;
int result, idx;
Console.WriteLine("strl: " + strl);
Console.WriteLine("Длина строки strl: " + strl.Length);
// Создать варианты строки strl, набранные
// прописными и строчными буквами.
Читать дальше