Программирование >>  Автоматически обновляемые приложения 

1 ... 3 4 5 [ 6 ] 7 8 9 ... 170


Листинг 2.2. Удаление подстроки из заданной строки

string bookTitle = С#.Народные советы ; Удаляем подстроку с третьей позиции bookTitle = bookTitle.Remove(2); MessageBox.Show(bookTitle);

Для извлечения части строки из заданной строки используется метод Substring, применение которого показано в листинге 2.3.

\ Листинг 2,3. Извлечение подстроки из заданной строки

string bookTitle = С#.Народные советы ;

Извлекаем подстроку с шестой позиции с размером в три символа bookTitle = bookTitle.Substring(5, 3); MessageBox.Show(bookTitle);

Примечание

Visual Basic.NET имеет в своем арсенале также такие методы и свойства, как Left, Right, Len И другие, унаследованные от Visual Basic 6.0. Вполне возможен вариант, что вам может попасться код, который использует эти устаревшие конструкции. Необходимо избавляться от подобных строчек кода, которым есть достойная альтернатива среди классов .NET Framework.

Входит ли строка в другую строку?

Метод indexof, проиллюстрированный в листинге 2.4, позволяет определить место вхождения подстроки в заданную строку.

Листинг 2.4. Определение вхождения подстроки в заданной строке

string strl = око ;

string str2 = Царь-колокол ;

int i = str2.IndexOf(strl);

Проверяем, входит ли строка око в слово Царь-колокол

if(i >= 0) MessageBox.Show(strl + входит в строку + str2)

Для удаления подстроки из заданной строки используется метод Remove. Если вы хотите удалить подстроку с указанной позиции до конца строки, то достаточно указать индекс нужного символа, как это сделано в листинге 2.2.



Преобразование строки в число

Не менее распространенная задача- преобразовать строку в число. В этом случае, как показано в листинге 2.5, можно использовать метод Parse.

: Листинг 2.5. Преобразование строки в число

string tankman = 4 ; string dog = 1 ;

textBoxl.Text = tankman + dog; получим 41 int all = int.Parse(tankman) + int.Parse(dog);

textBoxl.Text += Environment.NewLine + all.ToString(); получим 5

Как видите, сначала мы пытаемся сложить две строки, чтобы узнать численность экипажа танка из фильма Четыре танкиста и собака . Результат, равный 41, нас явно не устроит. Поэтому сначала преобразуем строки в числа, а затем снова попытаемся сложить две переменные.

Существует еще один способ преобразования строки в число- методы

класса Convert.

Вставка специального символа

Несмотря на то, что на клавиатуре имеется более 100 клавиш, некоторые символы на клавиатуре отсутствуют. Например, к разряду таких символов можно отнести знаки копирайта, знак зарегистрированной торговой марки, символы некоторых валют и т. д. В стандарте Unic9de знак копирайта имеет десятичный код 169. В листинге 2.6 показано, как, используя класс Convert, можно преобразовать код нужного символа и получить нужный символ как часть строки, который затем можно вывести в текстовом поле (рис. 2.1).

Таюке можно воспользоваться регулярным выражением, подключив пространство имен System.Text.RegularExpressions. В ЭТОМ случае ИСПОЛЬЗу-ется метод Regex. isMatch. А если ВЫ хотите написать собственный метод для нахождения строки в другой строке (для общего развития), то обратите внимание на статью Find а string inside another string на сайте http: dirtydogstink.coin/bIog/2007/02/16/how2FindAStringInsideAnotherStri ng.aspx, чтобы не изобретать заново велосипед.



Листинг 2.6. Вставка специального символа

int charCode = 169;

char specialChar = Convert.ToChar(charCode); textBoxl.Text = specialChar.ToString();

Можно использовать и шестнадцатеричное значение кода Unicode. Например, для вывода знака зарегистрированной торговой марки используем пример, приведенный в листинге 2.7.

: Листинг 2.7. Вставка символа торговой марки

Unicode-код для торговой марки int CharCode = 0x0ОАЕ;

char specialChar = Convert.ToChar(charCode); textBoxl.Text += specialChar.ToString();

Простейшие операции c<> строками

Вставка

Удаление подстроки

Извлечение подстроки

Вхо:ждение строки

Преобразование в число

Специальный символ

Повтор символов

Рис. 2.1. Вывод специальных символов в текстовом поле



1 ... 3 4 5 [ 6 ] 7 8 9 ... 170

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика