Учебники

6) Подстрока VB.NET

Что такое подстрока?

Функция подстроки используется для получения части указанной строки. Этот метод определен в классе 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) Нажмите кнопку «Пуск» на панели инструментов, чтобы выполнить код. Вы должны получить следующий результат:

Мы использовали следующий код:

Объяснение кода:

  1. Создание модуля с именем Module1.
  2. Начало основной подпроцедуры.
  3. Определение строковой переменной с именем st и присвоение ей значения Guru99.
  4. Определение строковой переменной с именем ‘subst’ в качестве подстроки String ‘st’ из индекса 0f и длиной 4 символа.
  5. Печать некоторого текста и вышеуказанной подстроки на консоли.
  6. Приостановка окна консоли на некоторое время в ожидании действий пользователя по его закрытию.
  7. Конец основной подпроцедуры.
  8. Конец модуля.

Один аргумент

Что если мы передадим только один аргумент функции? Функция скопирует все данные в строке, которая начинается с этого индекса. Что происходит, так это то, что функция 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

Нажмите кнопку Пуск, чтобы запустить код. Вы получите следующий результат:

Мы использовали следующий код:

Объяснение кода:

  1. Создание модуля с именем Module1.
  2. Начало основной подпроцедуры.
  3. Определение строковой переменной с именем st и присвоение ей значения Guru99.
  4. Определение строковой переменной с именем mid1 и получение символа по индексу 1 строки St. Этот символ будет назначен переменной mid1.
  5. Печать вышеуказанного символа на консоли.
  6. Определение строковой переменной с именем mid2 и получение символа с индексом 1 длиной 1 из String st. Длина 1 означает, что он вернет тот же символ в начальном индексе. Отсчет начинается с указанного вами начального индекса. Этот символ будет назначен переменной mid2.
  7. Печать вышеуказанного символа на консоли.
  8. Приостановка окна консоли на некоторое время в ожидании действий пользователя по его закрытию.
  9. Конец основной подпроцедуры.
  10. Конец модуля.

Резюме

  • Функция Substring определяется в классе String Visual Basic.NET.
  • Он принимает два аргумента, которые являются начальной точкой подстроки и длиной подстроки.
  • Мы можем поиграться с этими аргументами, чтобы получить различные наборы подстрок из главной строки.