
Основы работы со строками в visual basic
Тип данных String является последовательностью символов, каждый из которых, в свою очередь, является экземпляром типа данных Char. В этом разделе рассмотрены базовые понятия строк в Visual Basic.
Dim MyString As String
MyString = "This is an example of the String data type"
Любой текст, который присваивается переменной типа String, должен быть заключен в кавычки (""). Это означает, что кавычки в пределах строки не могут быть представлены кавычками.
В следующем примере демонстрируется, как правильно включать в строку кавычки:
' The value of myString is: He said, "Look at this example!"
myString = "He said, ""Look at this example!"""
В примере двойные кавычки перед словом
Look
становятся одной кавычкой в
строке. Тройные кавычки в конце предложения
представляют собой одинарную кавычку
и символ окончания строки.
Символы в строках
Строку можно представить как последовательность значений типа Char, кроме того, тип String имеет встроенные функции, которые позволяют манипулировать строками подобно массивам. Как и все массивы в .NET Framework, они являются массивами, в которых индексация ведется от нуля. Можно обратиться к определенному символу в строке с помощью свойства Chars, которое предоставляет механизм доступа к символу по занимаемой им позиции в строке. Например:
Dim myString As String = "ABCDE"
Dim myChar As Char
' The value of myChar is "D".
myChar = myString.Chars(3)
В приведенном выше примере свойство
строки Chars возвращает четвертый символ
в строке, D
, и присваивает его
переменной myChar
. Размер строки
можно получить, используя свойство
Length. Если требуется выполнить несколько
манипуляций со строкой, характерных
для массивов, можно преобразовать ее в
массив экземпляров Char, используя функцию
строки ToCharArray. Например:
Dim myString As String = "abcdefghijklmnop"
Dim myArray As Char() = myString.ToCharArray
Переменная myArray
теперь содержит
массив значений Char, каждый из которых
представляет символ из myString
.
В отличие от других основных типов, тип String является ссылочным. Когда в функцию или подпрограмму в качестве аргумента передается ссылочный тип данных, на самом деле передается ссылка на адрес в памяти, по которому расположены данные, а не фактическое значение строки. Точно так же в предыдущем примере имя переменной остается без изменений, но оно указывает на другой экземпляр класса String, которому присвоено новое значение.
Смена регистра
При написании приложения, которое поддерживает данные, вводимые пользователем, неизвестно, какой регистр будет использовать пользователь для ввода данных. Поскольку методы, которые сравнивают строки и знаки, зависят от регистра, необходимо преобразовать регистр строк, введенных пользователями, перед их сравнением в значения констант. Регистр строки меняется легко. В следующей таблице описаны два метода изменения регистра. Для каждого метода имеются перегруженные варианты, учитывающие язык и региональные параметры.
Название метода |
Применение |
String.ToUpper |
Преобразовывает регистр всех символов строки к верхнему регистру. |
String.ToLower |
Преобразовывает регистр всех символов строки к нижнему регистру. |
Dim MyString As String = "Hello World!"
Console.WriteLine(MyString.ToUpper())
' This example displays the following output:
' HELLO WORLD!