Иллюстрированный самоучитель по Visual Basic .NET

Строки. Строковые функции.

Строковая переменная содержит текст в кодировке Unicode длиной до 231 (более 2 миллиардов!) символов. Как было показано выше, значения строкового типа заключаются в кавычки:

Dim message As String
message = "Help"

Конкатенация (объединение) строк обычно выполняется оператором &. Старый вариант с оператором + тоже работает, но при отключении жесткой проверки типов он может вызвать серьезные проблемы, поэтому использовать знак + при конкатенации не рекомендуется. Старый способ идентификации строковых переменных с суффиксом $ (например, aStringVariable$) иногда используется для временных переменных.

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

Примечание
В отличие от предыдущих версий VB, в VB.NET не поддерживаются строки фиксированной длины
.

Строковые функции

В вашем распоряжении остались все классические строковые функции VB6 (Left, Right, Mid и т. д.), но версии этих функций с суффиксом $ теперь не поддерживаются. В табл. 3.5 перечислены важнейшие функции класса String, заменяющие строковые функции VB6. Не забывайте, что при многократной модификации строк (например, при вызове Mid в цикле) следует использовать класс StringBuilder, описанный в главе 4. Некоторые из приведенных методов используют массивы, которые будут рассмотрены ниже в этой главе.

При программировании для .NET рекомендуется по возможности использовать методы и свойства класса String, входящего в .NET Framework. Самые распространенные строковые методы перечислены в табл. 3.6.

Таблица 3.5. Основные строковые функции.

Функция Описание
Asc Возвращает код первого символа в строке
Chr Преобразует число в символ Unicode
Filter Получает строковый массив и искомую строку; возвращает одномерный массив всех элементов, в которых был найден заданный текст
GetChar Возвращает символ строки с заданным индексом в формате Char. Индексация символов начинается с 1. Например, команда GetChar("Hello",2) возвращает символ "е" в виде типа Char
InStr Возвращает позицию первого вхождения одной строки в другой строке
InStrRev Возвращает позицию последнего вхождения одной строки в другой строке
Join Строит большую строку из меньших строк
LCase Преобразует строку к нижнему регистру
Left Находит или удаляет заданное количество символов от начала строки
Len Возвращает длину строки
LTrim Удаляет пробелы в начале строки
Mid Находит или удаляет символы в строке
Replace Заменяет одно или более вхождений одной строки в другой строке
Right Находит или удаляет заданное количество символов в конце строки
RTrim Удаляет пробелы в конце строки
Space Генерирует строку заданной длины, состоящую из пробелов
Split Позволяет разбивать строку по заданным разделителям (например, пробелам)
Str Возвращает строковое представление числа
StrComp Альтернативный способ сравнения строк
StrConv Преобразует строку из одной формы в другую (например, с изменением регистра)
String Создает строку, состоящую из многократно повторяющегося символа
Trim Удаляет пробелы в начале и конце строки
UCase Преобразует строку к верхнему регистру
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.