Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
24
Добавлен:
27.04.2015
Размер:
265.44 Кб
Скачать

Тема 4.9. Обработка строковых данных

4.9.1. Основные понятия

4.9.2. Объявление и инициализация строк

4.9.3. Средства VВ для ввода/вывода и отображения строк

4.9.4. Средства VB и VS для обработки строк

4.9.5. Работа с кодами ASCII

4.9.6. Задачи для самостоятельного решения по теме «Обработка строковых данных»

4.9.7. Тестовые задания по теме «Обработка строковых данных»

4.9.1. Основные понятия

Управление электронными документами во многих сферах деятельнос­ти является очень важной задачей. В связи с этим VB предос­тавляет различные механизмы как для работы с текстовыми доку­ментами, так и для обработки их содержимого. Наиболее общим типом документов является неформатированный текстовый файл, который состоит из слов, букв, цифр и специальных символов различного на­значения.

Известно, что наряду с числовыми данными, компьютер может хранить и обрабатывать текстовую информацию. Это, например, тексты документов MS Word, текстовые поля форм VS, текстовые поля баз данных и др. Кроме того, обмен текстовой информацией между пользователем и приложением – важнейшая часть пользовательского интерфейса VS.

В VB строковые данные можно использовать или как элементы базового типа, или как экземпляры класса String. Причем каждый символ текста кодируется двух-байтным кодом Unicode, а стандартные символы ASCII остаются в традиционном диапазоне значений от 0 до 127, и, поэтому значение второго байта каждого символа Unicode в этом диапазоне устанавливается в 0.

Необходимо обратить внимание, что при любой модификации строки в VB .NET создается новый экземпляр строки, а частая модификация строки требует больших затрат ресурсов. Поэтому в VB .NET создан класс StringBuilder для выполнения, например, таких операций, как выборка данных из буфера и объединение их в строковой переменной, который позволяет оптимизировать работу со строками.

При обработке текстовой информации в VB можно производить различные операции, например, такие, как:

  • соединение (конкатенация) строк текста; сортировка строк текста; поиск определённых символов;

  • составление новых строк из частей уже имеющихся строк; формирование строки повторением другой строки n раз;

  • извлечение подстрок из более длинных строк; преобразование регистра символов строки;

  • сравнение строк с учетом регистра символов; сравнение строк без учета регистра символов;

  • преобразование строк в массив символов и обратные преобразования; подсчет символов; подсчет слов;

  • удаление непечатаемых символов; замена подстрок; вставка символа или строки; форматирование чисел в виде строк и др.

4.9.2. Объявление и инициализация строк

Строковые переменные являются данными типа String и должны быть объявлены следующим образом:

Dim ИмяПеременной As String

Присвоение значений переменным строкового типа, как и переменным других типов, производится либо при объявлении переменной (при инициализации), либо оператором присваивания:

Dim ИмяПеременной As String = "строка символов"

ИмяПеременной = СтроковоеВыражение

СтроковоеВыражение представляет собой:

  • строковый литерал – последовательность символов, заключенных в двойные кавычки;

  • строковая именованная константа, либо переменная строкового типа;

  • результат операции с участием строковых выражений;

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

Строковая именованная константа должна быть обязательно инициализирована при объявлении:

Const НазваниеФирмы = "ГОУ ""МТУСИ"""

Обратите внимание, что если в строку нужно включить двойную кавычку, то после неё ставят ещё одну двойную кавычку.

Как известно, во избежание неконтролируемых неявных преобразований типов, всегда необходимо использовать режим строгого контроля типов, включаемый оператором Option Strict On. Причем для явного преобразования любого числового типа в строку можно использовать функцию CStr ( ) или метод To String( )класса Convert:

Dim Число As Double

Число = 3.14

Dim Строка1 As String = Convert.ToString(Число)

Dim Строка2 As String = CStr(Число)

Напомним также, что обратное преобразование из строки в число можно выполнить с помощью функции Val( ), CDbl( ), CInt( )и т.д., или с помощью соответствующих методов класса Convert – ToDouble( ), ToInt32( ) и т.д.

В п.п. 4.2.4 Темы 4.2 настоящего пособия подробно были изложены средства явных преобразований. Здесь еще раз обращаем внимание на то, что в числовой переменной разделителем целой и дробной части является точка, а в строке – запятая. Если пользователь вместо запятой использует точку в качестве разделителя, при выполнении программы произойдёт ошибка. Это относится ко всем вышеперечисленным функциям и методам, кроме функции Val( ), которая в качестве разделителя целой и дробной частей принимает только точку. Во избежание ошибок необходимо перед преобразованием в число проверять разделитель целой и дробной части.

Соседние файлы в папке Учебное_пособие-Раздел4-Информатика-270100з