В классе String предоставляются два удобных метода, позволяющих сменить регистр букв в строке, — ToUpper()
и ToLower()
. Диже приведены их простейшие формы.
public string ToLower()
public string ToUpper()
Метод ToLower()
делает строчными все буквы в вызывающей строке, а метод ToUpper()
делает их прописными. В обоих случаях возвращается получающаяся в итоге строка. Имеются также следующие формы этих методов, в которых можно указывать информацию о культурной среде и способы преобразования символов.
public string ToLower (Culturelnfo culture)
public string ToUpper(Culturelnfo culture)
С помощью этих форм можно избежать неоднозначности в исходном коде по отношению к правилам смены регистра. Именно для таких целей эти формы и рекомендуется применять.
Кроме того, имеются следующие методы ToUpperInvariant()
и ToLowerlnvariant()
.
public string ToUpperlnvariant()
public string ToLowerlnvariant()
Эти методы аналогичны методам ToUpper()
и ToLower()
, за исключением того, что они изменяют регистр букв в вызывающей строке безотносительно к настройкам культурной среды.
Для получения части строки служит метод Substring()
. Ниже приведены две его формы.
public string Substring(int startlndex)
public string Substring(int startlndex, int length)
В первой форме метода Substring()
подстрока извлекается, начиная с места, обозначаемого параметром
В приведенном ниже примере программы демонстрируется применение метода Substring().
// Использовать метод Substring().
using System;
class SubstringDemo {
static void Main() {
string str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
Console.WriteLine("Строка str: " + str);
Console.Write("Подстрока str.Substring(15): ");
string substr = str.Substring(15);
Console.WriteLine(substr);
Console.Write("Подстрока str.Substring(0, 15): ");
substr = str.Substring(0, 15);
Console.WriteLine (substr);
}
}
Эта программа дает следующий результат.
Строка str: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Подстрока str.Substring(15): PQRSTUVWXYZ
Подстрока' str. Substring (0, 15): ABCDEFGHIJKLMNO
Как упоминалось ранее, в классе String
реализуется обобщенный интерфейс IEnumerable
. Это означает, что, начиная с версии C# 3.0, для объекта класса String
можно вызывать методы расширения, определенные в классах Enumerable
и Queryable
, которые находятся в пространстве имен System.Linq
. Эти методы расширения служат главным образом для поддержки LINQ, хотя некоторые из них могут использоваться в иных целях, в том числе и в определенных видах обработки строк. Подробнее о методах расширения см. в главе 19.
Форматирование
Когда данные встроенных в C# типов, например int
или double
, требуется отобразить в удобочитаемой форме, приходится формировать их строковое представление. Несмотря на то что в C# для такого представления данных автоматически предоставляется формат, используемый по умолчанию, имеется также возможность указать выбранный формат вручную. Так, в части I этой книги было показано, что числовые данные можно выводить в формате выбранной денежной единицы. Для форматирования данных числовых типов в C# предусмотрен целый ряд методов, включая методы Console.WriteLine()
, String.Format()
и ToString()
. Во всех этих методах применяется один и тот же подход к форматированию. Поэтому освоив один из них, вы сможете без особого труда применять и другие.