Что такое подстрока?
Функция подстроки используется для получения части указанной строки. Этот метод определен в классе 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 Module1Sub Main()Dim st As String = "Guru99"Dim subst As String = st.Substring(0, 4)Console.WriteLine("The substring is: {0}", subst)Console.ReadKey()End SubEnd Module
Шаг 3) Нажмите кнопку «Пуск» на панели инструментов, чтобы выполнить код. У вас должен получиться следующий результат:
Мы использовали следующий код:
Пояснение к коду:
- Создание модуля с именем Module1.
- Запуск основной подпроцедуры.
- Определение строковой переменной с именем st и присвоение ей значения Guru99.
- Определение строковой переменной с именем «subst» как подстроки строки «st» из индекса 0f и длиной 4 символа.
- Печать текста и указанной выше подстроки на консоли.
- Приостановить окно консоли на некоторое время, ожидая, пока пользователь закроет его.
- Конец основной подпроцедуры.
- Конец модуля.
Один аргумент
Что, если мы передадим функции только один аргумент? Функция скопирует все данные в строку, которая начинается с этого индекса. Что происходит, так это то, что функция Substring внутренне копирует все строковые данные по этому индексу, а также данные, следующие за этим индексом. Например:
Module Module1Sub Main()Dim st As String = "Guru99"Dim subst As String = st.Substring(4)Console.WriteLine("The substring is: {0}", subst)Console.ReadKey()End SubEnd Module
Нажмите кнопку «Пуск», чтобы запустить код. Он должен вернуть следующее:
Функция подстроки вернула 99. Мы передали функции параметр 4, что означает, что она начнет извлекать подстроку из символа с индексом 4 до конца строки. 9 - это символ с индексом 4 строки Guru99, поэтому извлечение началось с него.
Средние персонажи
Мы также можем получить средние символы рассматриваемой строки. В этом случае нам нужно предоставить только начальный индекс и длину строки, которая нам нужна. В следующем примере мы получаем подстроку указанной строки из индекса 2, и строка будет иметь длину 2 символа:
Module Module1Sub Main()Dim st As String = "Guru99"Dim subst As String = st.Substring(2, 2)Console.WriteLine("The substring is: {0}", subst)Console.ReadKey()End SubEnd Module
Нажмите кнопку «Пуск» на панели инструментов, чтобы запустить код. Вы получите следующий результат:
В приведенном выше примере функция подстроки вернула ru. Мы передали в функцию параметры (2, 2). Первые 2 инструктируют функцию начать извлечение подстроки с индекса 2, а вторые 2 инструктируют функцию вернуть подстроку длиной только 2 символа. Это означает, что извлечение подстроки должно начинаться с элемента, расположенного в индексе 2 строки Guru99, то есть r. Так как возвращаемая подстрока должна иметь длину всего 2 символа, извлечение не будет проходить мимо «u», поэтому возвращается «ru».
Один символ
Мы можем использовать функцию Substring, чтобы получить один символ из строки. В таком случае вам необходимо сделать выделение, но к персонажу можно получить прямой доступ. Это немного быстрее. Следующий пример демонстрирует два способа достижения этого:
Module Module1Sub 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 SubEnd Module
Нажмите кнопку «Пуск», чтобы запустить код. Вы получите следующий результат:
Мы использовали следующий код:
Пояснение к коду:
- Создание модуля с именем Module1.
- Запуск основной подпроцедуры.
- Определение строковой переменной с именем st и присвоение ей значения Guru99.
- Определение строковой переменной с именем mid1 и получение символа с индексом 1 строки st. Этот символ будет присвоен переменной mid1.
- Печать указанного выше символа на консоли.
- Определение строковой переменной с именем mid2 и получение символа с индексом 1 длиной 1 из String st. Длина 1 означает, что он вернет тот же символ в начальном индексе. Подсчет начинается с указанного вами начального индекса. Этот символ будет присвоен переменной mid2.
- Печать указанного выше символа на консоли.
- Приостановить окно консоли на некоторое время, ожидая, пока пользователь закроет его.
- Конец основной подпроцедуры.
- Конец модуля.
Резюме
- Функция Substring определена в классе String в Visual Basic.NET.
- Он принимает два аргумента: начальная точка подстроки и длина подстроки.
- Мы можем поэкспериментировать с этими аргументами, чтобы получить различные наборы подстрок из основного String.