- •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). Если уканный массив пустой, то удаляются пробелы.  | 
		
