Что такое подстрока?
Функция подстроки используется для получения части указанной строки. Этот метод определен в классе String Microsoft VB.NET. Вы должны указать начальный индекс, из которого будет извлечена строка. Строка будет извлечена из этого индекса до указанной вами длины.
В этом уроке вы узнаете
Синтаксис подстроки
Функция принимает два аргумента, как показано в следующем синтаксисе:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
Вот,
- Ключевое слово ByVal обозначает передачу по значению, которая представляет собой механизм передачи аргументов функциям.
- Start_Index — это индекс, из которого будет получена подстрока.
- sub_length обозначает длину, до которой строка будет скопирована из start_Index. Эта длина измеряется количеством символов. Функция вернет извлеченную подстроку.
Примеры
Шаг 1) Создайте новое консольное приложение.
Шаг 2) Добавьте следующий код:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim subst As String = st.Substring(0, 4) Console.WriteLine("The substring is: {0}", subst) Console.ReadKey() End Sub End Module
Шаг 3) Нажмите кнопку «Пуск» на панели инструментов, чтобы выполнить код. Вы должны получить следующий результат:
Мы использовали следующий код:
Объяснение кода:
- Создание модуля с именем Module1.
- Начало основной подпроцедуры.
- Определение строковой переменной с именем st и присвоение ей значения Guru99.
- Определение строковой переменной с именем ‘subst’ в качестве подстроки String ‘st’ из индекса 0f и длиной 4 символа.
- Печать некоторого текста и вышеуказанной подстроки на консоли.
- Приостановка окна консоли на некоторое время в ожидании действий пользователя по его закрытию.
- Конец основной подпроцедуры.
- Конец модуля.
Один аргумент
Что если мы передадим только один аргумент функции? Функция скопирует все данные в строке, которая начинается с этого индекса. Что происходит, так это то, что функция Substring внутренне копирует все строковые данные с этим индексом, а также данные, которые следуют за этим индексом. Например:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim subst As String = st.Substring(4) Console.WriteLine("The substring is: {0}", subst) Console.ReadKey() End Sub End Module
Нажмите кнопку Пуск, чтобы запустить код. Он должен вернуть следующее:
Функция подстроки вернула 99. Мы передали параметр 4 в функцию, что означает, что он начнет извлекать подстроку из символа с индексом 4 до конца строки. 9 — символ в индексе 4 строки Guru99, следовательно, там началось извлечение.
Средние персонажи
Мы также можем получить средние символы рассматриваемой строки. В этом случае нам нужно только указать начальный индекс и длину нужной нам строки. В следующем примере мы получаем подстроку указанной строки из индекса 2, и строка будет иметь длину 2 символа:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim subst As String = st.Substring(2, 2) Console.WriteLine("The substring is: {0}", subst) Console.ReadKey() End Sub End Module
Нажмите кнопку Пуск на панели инструментов, чтобы запустить код. Вы получите следующий результат:
В приведенном выше примере функция substring вернула ru. Мы передали параметры (2, 2) в функцию. Первые 2 инструктируют функцию начать извлечение подстроки из индекса 2, а вторые 2 инструктируют функцию возвращать подстроку длиной только 2 символа. Это означает, что извлечение подстроки должно начинаться с элемента, расположенного по индексу 2 строки Guru99, то есть r. Так как возвращаемая подстрока должна иметь длину только 2 символа, извлечение не будет идти после ‘u’, поэтому она вернула ‘ru.’
Один символ
Мы можем использовать функцию Substring, чтобы получить один символ из строки. В таком случае вам необходимо сделать выделение, но персонаж может быть доступен напрямую. Это немного быстрее. Следующий пример демонстрирует два способа достижения этой цели:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim mid1 As Char = st(1) Console.WriteLine(mid1) Dim mid2 As String = st.Substring(1, 1) Console.WriteLine(mid2) Console.ReadKey() End Sub End Module
Нажмите кнопку Пуск, чтобы запустить код. Вы получите следующий результат:
Мы использовали следующий код:
Объяснение кода:
- Создание модуля с именем Module1.
- Начало основной подпроцедуры.
- Определение строковой переменной с именем st и присвоение ей значения Guru99.
- Определение строковой переменной с именем mid1 и получение символа по индексу 1 строки St. Этот символ будет назначен переменной mid1.
- Печать вышеуказанного символа на консоли.
- Определение строковой переменной с именем mid2 и получение символа с индексом 1 длиной 1 из String st. Длина 1 означает, что он вернет тот же символ в начальном индексе. Отсчет начинается с указанного вами начального индекса. Этот символ будет назначен переменной mid2.
- Печать вышеуказанного символа на консоли.
- Приостановка окна консоли на некоторое время в ожидании действий пользователя по его закрытию.
- Конец основной подпроцедуры.
- Конец модуля.
Резюме
- Функция Substring определяется в классе String Visual Basic.NET.
- Он принимает два аргумента, которые являются начальной точкой подстроки и длиной подстроки.
- Мы можем поиграться с этими аргументами, чтобы получить различные наборы подстрок из главной строки.