
- •3. Строки
- •3.1. Класс System.String
- •3.1.1. Форматирование и синтаксический анализ
- •If (Char.IsPunctuation(s1[I]) | Char.IsWhiteSpace(s1[I]))
- •3.1.2. Доступ к отдельным элементам строки
- •3.1.3. Смена регистра в строке
- •3.1.4. Объединение нескольких строк
- •3.1.5. Разделение строк на подстроки
- •3.2. Класс System.Text.StringBuilder
- •3.3. Структура System.Char
3. Строки
(http://msdn.microsoft.com/ru-ru/library/ms228362.aspx)
Примеры объявления и инициализации строк:
string message1; // Объявление строковой переменной
// Объявление и инициализация пустой строки с использованием
// встроенной константы, а не литерала ""
string message2 = System.String.Empty;
// Объявление и инициализация строки с использованием
// типа System.String (из CTS)
System.String greeting = "Hello World!";
// Объявление и инициализация строковой константы
const string message3 = "Visual C#";
3.1. Класс System.String
(http://msdn.microsoft.com/ru-ru/library/system.string.aspx)
Таблица 3.1. Основные поля, свойства и методы класса System.String
Имя |
Описание |
Поля |
|
Empty |
Представляет пустую строку (только для чтения). |
Свойства |
|
Chars[i] |
Получает символ (объект Char) из указанной позиции (начиная с 0) текущей строки. |
Length |
Возвращает число знаков в текущей строке. |
Методы |
|
Compare(s1,s2); Compare(s1,s2,r);
Compare(s1,i1,s2,i2,L); Compare(s1,i1,s2,i2,L,r); |
Сравнивает две указанные строки (в порядке сортировки) с учетом или без учета регистра (r типа Boolean) и возвращает целое число (Int32): – отрицательное число, если s1 < s2 ; – ноль, если s1 = s2 ; – положительное число, если s1 > s2 . Сравнивает подстроки двух указанных строк, начинаю-щиеся с указанных позиций (соответственно с i1 и i2) и имеющие длину не более L. |
CompareOrdinal(s1,s2);
CompareOrdinal(s1,i1,s2, i2,L); |
Сравнивает две указанные строки (в соответствии с кодами входящих в них символов) и возвращает целое число (Int32). Сравнивает подстроки двух указанных строк, начинаю-щиеся с указанных позиций (соответственно с i1 и i2) и имеющие длину не более L. |
CompareTo(s2); |
Сравнивает текущую строку (s1) с заданной строкой (s2) (в порядке сортировки) и возвращает целое число (Int32): – отрицательное число, если s1 предшествует s2 ; – ноль, если s1 и s2 имеют одну и ту же позицию в порядке сортировки; – положительное число, если s1 стоит после s2 . |
Concat(v); Concat(v1,v2); Concat(v1,v2,v3); Concat(v1,v2,v3,v4); Concat(arrV[]); Concat(s1,s2); Concat(s1,s2,s3); Concat(s1,s2,s3,s4); Concat(arrS[]); |
Создает строковое представление указанного объекта (V). Сцепляет строковые представления двух, трех или четырех указанных объектов (v1, v2, v3, v4), либо элементов в массиве объектов (arrV).
Сцепляет две, три или четыре указанные строки (s1, s2, s3, s4), либо элементы массива строк (arrS). |
Contains(s2); |
Выполняет проверку вхождения строки s2 в текущую строку s1 и возвращает логическое значение (true или false). |
Copy(s); |
Создает новую строку, имеющую то же значение, что и указанная строка s. |
CopyTo(i1,arrCh[],i2,L); |
Копирует заданное число символов (L) из текущей строки (s), начиная с указанной позиции (i1), и вставляет в массив символов (arrCh), начиная с i2-элемента (заменяя их). |
EndsWith(s2); |
Определяет, совпадает ли конец текущей строки (s1) с указанной строкой (s2) и возвращает логическое значение (true или false). |
Format(sf,v1); Format(sf,v1,v2); Format(sf,v1,v2,v3); Format(sf,arrV[]); |
Заменяет один или более элементов формата (см. п.4.2) в указанной строке (sf) строковым представлением одного, двух или трех указанных объектов (v1, v2, v3), либо элементов массива (arrV). |
GetEnumerator; |
Извлекает объект, который может выполнять итерацию отдельных знаков данной строки. |
IndexOf(ch); IndexOf(s2); IndexOf(ch,i); IndexOf(s2,i); IndexOf(ch,i,L); IndexOf(s2,i,L); |
Возвращает индекс (с отсчетом от нуля) первого вхождения указанного символа Unicode (ch) или строки (s2) в текущей строке (s1). Поиск начинается от начала строки или с указанной позиции (i) строки, при этом проверяется заданное количество позиций (L) (параметры i и L задаются значениями типа Int32). |
Insert(i,s2); |
Вставляет в текущую строку (s1) подстроку (s2) начиная с указанного индекса (i). |
Join(s,arrV[]); Join(s,arrS[]); Join(s,String[],i,L); |
Сцепляет элементы массива объектов (arrV) или строк (arrS), помещая между ними заданный разделитель (s). Сцепляются L элементов массива, начиная с i-го (параметры i и L задаются значениями типа Int32). |
LastIndexOf(ch); LastIndexOf(s2); LastIndexOf(ch,i); LastIndexOf(s2,i); LastIndexOf(ch,i,L); LastIndexOf(s2,i,L); |
Возвращает индекс (с отсчетом от нуля) последнего вхождения указанного символа Unicode (ch) или строки (s2) в текущей строке (s1). Поиск начинается от конца строки или с указанной позиции (i) строки и выполняется в обратном направлении до начала строки, при этом проверяется заданное количество позиций (L) (параметры i и L задаются значениями типа Int32). |
PadLeft(L); PadLeft(L,ch); |
Дополняет текущую строку слева пробелами или заданными символами (ch) до тех пор, пока длина строки не станет равной L. |
PadRight(L); PadRight(L,ch); |
Дополняет текущую строку справа пробелами или заданными символами (ch) до тех пор, пока длина строки не станет равной L. |
Remove(i); Remove(i,L); |
Удаляет из текущей строки символы, начиная с i-го символа и до конца строки или не более L символов (параметры i и L задаются значениями типа Int32). |
Replace(ch1,ch2); Replace(s1,s2); |
Заменяет в текущей строке все вхождения символа Unicode (ch1) или подстроки s1 на символ (ch2) или подстроку (s2). |
Split(arrCh[]); Split(arrCh[],i); Split(arrCh[],strOpt); Split(arrCh[],i,strOpt); Split(arrS[],strOpt); Split(arrS[],i,strOpt); |
Возвращает строковый массив, содержащий подстроки текущей строки, разделенные элементами заданного массива символов Unicode (arrCh) или строк (arrS). Параметр i указывает максимальное число возвращаемых под-строк. Параметр strOpt может содержать следующие значения: – RemoveEmptyEntries – исключает пустые элементы из возвращаемого массива; – None – включает пустые элементы в возвращаемый массив. |
StartsWith(s2); |
Определяет, совпадает ли начало текущей строки (s1) с указанной строкой (s2) и возвращает логическое значение (true или false). |
Substring(i); Substring(i,L); |
Извлекает подстроку из текущей строки. Подстрока начинается с указанной позиции (i) строки и имеет указанную длину (L). |
ToCharArray(); ToCharArray(i,L); |
Копирует символы текущей строки или ее подстроки в массив символов Unicode. Подстрока задается начальной позицией (i) в текущей строке и своей длиной (L). |
ToLower(); ToUpper(); |
Возвращает текущую строку, представленную соответственно строчными или прописными буквами (т.е. в нижнем или верхнем регистре). |
Trim(); Trim(arrCh[]); |
Удаляет из текущей строки все начальные и конечные пробелы или вхождения любых символов из заданного массива (arrCh). Если уканный массив пустой, то удаляются пробелы. |
TrimEnd(arrCh[]); |
Удаляет из текущей строки все конечные вхождения любых символов из заданного массива (arrCh). Если уканный массив пустой, то удаляются пробелы. |
TrimStart(arrCh[]); |
Удаляет из текущей строки все начальные вхождения любых символов из заданного массива (arrCh). Если уканный массив пустой, то удаляются пробелы. |