Чтение онлайн

на главную - закладки

Жанры

C# 4.0 полное руководство - 2011

Шилдт Герберт

Шрифт:

Объекты типа string содержат также свойство Length, где хранится длина строки.

Таблица 7.1. Некоторые общеупотребительные методы обращения со строками

Описание

Метод

static int Compare(string strA, string strB, StringComparison comparisonType)

bool Equals(string value, StringComparison comparisonType)

int IndexOf(char value)

int IndexOf(string value, StringComparison comparisonType)

Возвращает

отрицательное значение, если строка strA меньше строки strB; положительное значение, если строка strA больше строки strB; и нуль, если сравниваемые строки равны. Способ сравнения определяется аргументом comparisonType Возвращает логическое значение true, если вызывающая строка имеет такое же значение, как и у аргумента value. Способ сравнения определяется аргументом comparisonType Осуществляет поиск в вызывающей строке первого вхождения символа, определяемого аргументом value. Применяется порядковый способ поиска. Возвращает индекс первого совпадения с искомым символом или -1, если он не обнаружен .Осуществляет поиск в вызывающей строке первого вхождения подстроки, определяемой аргументом value. Возвращает индекс первого совпадения с искомой подстрокой или -1, если она не обнаружена. Способ поиска определяется аргументом comparisonType int LastlndexOf(char value)

int LastlndexOf(string value, StringComparison comparisonType)

string ToLower(Culturelnfo. CurrentCulture culture)

string ToUpper(Culturelnfo. CurrentCulture culture)

Осуществляет поиск в вызывающей строке последнего вхождения символа, определяемого аргументом value. Применяется порядковый способ поиска. Возвращает индекс последнего совпадения с искомым символом или -1, если он не обнаружен Осуществляет поиск в вызывающей строке последнего вхождения подстроки, определяемой аргументом value. Возвращает индекс последнего совпадения с искомой подстрокой или -1, если она не обнаружена. Способ пойска определяется аргументом comparisonType

Возвращает вариант вызывающей строки в нижнем регистре. Способ преобразования определяется аргументом 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, набранные // прописными и строчными буквами.

strLow = strl.ToLower(Cirlturelnfo.CurrentCulture) ; strUp = strl.ToUpper (Culturelnfo.CurrentCulture);

Console.WriteLine("Вариант строки strl, " +

"набранный строчными буквами:\n " + strLow); Console.WriteLine("Вариант строки strl, " +

"набранный прописными буквами:\n " + strUp);

Console.WriteLine;

// Вывести строку strl посимвольно.

Console.WriteLine("Вывод строки strl посимвольно.") ; for (int i=0; i < strl.Length; i++)

Console.Write(strl[i]);

Console.WriteLine("\n");

// Сравнить строки способом порядкового сравнения, if (strl == str2)

Console.WriteLine("strl == str2"); else

Console.WriteLine("strl != str2"); if (strl == str3)

Console.WriteLine("strl == str3"); else

Console.WriteLine("strl != str3");

// Сравнить строки с учетом культурной среды.

result = string.Compare(str3, strl, StringComparison.CurrentCulture) ; if(result == 0)

Console.WriteLine("Строки strl и str3 равны"); else if (result < 0)

Console.WriteLine("Строка strl-меньше строки str3"); else

Console.WriteLine("Строка strl больше строки str3");

Console.WriteLine;

// Присвоить новую строку переменной str2. str2 = "Один Два Три Один";

// Поиск подстроки.

idx = str2.IndexOf("Один", StringComparison.Ordinal);

Поделиться:
Популярные книги

Невеста драконьего принца

Шторм Елена
Любовные романы:
любовно-фантастические романы
5.25
рейтинг книги
Невеста драконьего принца

Мастер Разума III

Кронос Александр
3. Мастер Разума
Фантастика:
героическая фантастика
попаданцы
аниме
5.25
рейтинг книги
Мастер Разума III

Недотрога для темного дракона

Панфилова Алина
Фантастика:
юмористическое фэнтези
фэнтези
сказочная фантастика
5.00
рейтинг книги
Недотрога для темного дракона

Идеальный мир для Лекаря 26

Сапфир Олег
26. Лекарь
Фантастика:
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 26

Измена. Мой заклятый дракон

Марлин Юлия
Любовные романы:
любовно-фантастические романы
7.50
рейтинг книги
Измена. Мой заклятый дракон

Случайная свадьба (+ Бонус)

Тоцка Тала
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Случайная свадьба (+ Бонус)

Попаданка для Дракона, или Жена любой ценой

Герр Ольга
Любовные романы:
любовно-фантастические романы
7.17
рейтинг книги
Попаданка для Дракона, или Жена любой ценой

1941: Время кровавых псов

Золотько Александр Карлович
1. Всеволод Залесский
Приключения:
исторические приключения
6.36
рейтинг книги
1941: Время кровавых псов

Отрок (XXI-XII)

Красницкий Евгений Сергеевич
Фантастика:
альтернативная история
8.50
рейтинг книги
Отрок (XXI-XII)

Отверженный III: Вызов

Опсокополос Алексис
3. Отверженный
Фантастика:
фэнтези
альтернативная история
7.73
рейтинг книги
Отверженный III: Вызов

Адвокат вольного города 2

Парсиев Дмитрий
2. Адвокат
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Адвокат вольного города 2

На границе империй. Том 8. Часть 2

INDIGO
13. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 8. Часть 2

Город воров. Дороги Империи

Муравьёв Константин Николаевич
7. Пожиратель
Фантастика:
боевая фантастика
5.43
рейтинг книги
Город воров. Дороги Империи

Метатель

Тарасов Ник
1. Метатель
Фантастика:
боевая фантастика
попаданцы
рпг
фэнтези
фантастика: прочее
постапокалипсис
5.00
рейтинг книги
Метатель