Какво е SubString?
Функцията substring се използва за получаване на част от определен низ. Този метод е дефиниран в класа String на Microsoft VB.NET. Трябва да посочите началния индекс, от който ще бъде извлечен низът. Низът ще бъде извлечен от този индекс до дължината, която сте посочили.
В този урок ще научите
- Какво е SubString?
- Синтаксис на подниза
- Примери
- Един аргумент
- Средни герои
- Един Чар
Синтаксис на подниза
Функцията приема два аргумента, както е показано в следния синтаксис:
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 на String st. Този знак ще бъде присвоен на променливата mid1.
- Отпечатване на горния знак на конзолата.
- Определяне на низова променлива с име mid2 и получаване на символа с индекс 1 с дължина 1 от String st. Дължината на 1 означава, че ще върне същия знак при началния индекс. Преброяването започва от началния индекс, който сте посочили. Този знак ще бъде присвоен на променливата mid2.
- Отпечатване на горния знак на конзолата.
- Поставяне на пауза на прозореца на конзолата за известно време, докато потребителят предприеме действия, за да го затвори.
- Край на основната подпроцедура.
- Край на модула.
Обобщение
- Функцията Substring е дефинирана в класа String на Visual Basic.NET.
- Той приема два аргумента, който е началната точка на подниза и дължината на подниза.
- Можем да си поиграем с тези аргументи, за да получим различни набори от поднизове от основния String.