Co to jest podciąg?
Funkcja podciągu służy do uzyskania części określonego ciągu. Ta metoda jest zdefiniowana w klasie String programu Microsoft VB.NET. Musisz określić indeks początkowy, z którego zostanie wyodrębniony ciąg. Ciąg zostanie wyodrębniony z tego indeksu do określonej przez Ciebie długości.
W tym samouczku dowiesz się
- Co to jest podciąg?
- Składnia podłańcucha
- Przykłady
- Jeden argument
- Środkowe postacie
- One Char
Składnia podłańcucha
Funkcja przyjmuje dwa argumenty, jak pokazano w następującej składni:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
Tutaj,
- Słowo kluczowe ByVal oznacza wartość przekazywaną, która jest mechanizmem przekazywania argumentów do funkcji.
- Start_Index to indeks, z którego zostanie uzyskany podciąg
- sub_length oznacza długość, do której String zostanie skopiowany z start_Index. Długość tę mierzy się liczbą znaków. Funkcja zwróci wyodrębniony podciąg.
Przykłady
Krok 1) Utwórz nową aplikację konsolową.
Krok 2) Dodaj do niego następujący kod:
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
Krok 3) Kliknij przycisk Start na pasku narzędzi, aby wykonać kod. Powinieneś otrzymać następujący wynik:
Użyliśmy następującego kodu:
Wyjaśnienie kodu:
- Tworzenie modułu o nazwie Module1.
- Rozpoczęcie głównej podprocedury.
- Zdefiniowanie zmiennej łańcuchowej o nazwie st i przypisanie jej wartości Guru99.
- Zdefiniowanie zmiennej łańcuchowej o nazwie „subst” jako podłańcucha łańcucha „st” z indeksu 0f i długości 4 znaków.
- Drukowanie tekstu i powyższego podciągu na konsoli.
- Wstrzymaj okno konsoli na chwilę, czekając, aż użytkownik podejmie akcję, aby je zamknąć.
- Koniec głównej podprocedury.
- Koniec modułu.
Jeden argument
A co, jeśli przekażemy do funkcji tylko jeden argument? Funkcja skopiuje wszystkie dane w łańcuchu, który zaczyna się od tego indeksu. Dzieje się tak, że funkcja Substring wewnętrznie kopiuje wszystkie dane ciągu w tym indeksie, a także te, które następują po tym indeksie. Na przykład:
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
Kliknij przycisk Start, aby uruchomić kod. Powinien zwrócić następujące informacje:
Funkcja podłańcucha zwróciła 99. Przekazaliśmy parametr 4 do funkcji, co oznacza, że zacznie ona wyodrębniać podciąg ze znaku o indeksie 4 do końca ciągu. 9 to znak pod indeksem 4 ciągu Guru99, stąd wyodrębnianie się tam rozpoczęło.
Środkowe postacie
Możliwe jest również pobranie środkowych znaków danego ciągu znaków. W takim przypadku musimy podać tylko początkowy indeks i długość ciągu, którego potrzebujemy. W poniższym przykładzie pobieramy podłańcuch określonego String z indeksu 2, a String będzie miał długość 2 znaków:
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
Kliknij przycisk Start na pasku narzędzi, aby uruchomić kod. Otrzymasz następujący wynik:
W powyższym przykładzie funkcja podciągowa zwróciła ru. Przekazaliśmy parametry (2, 2) do funkcji. Pierwsze 2 instruuje funkcję, aby rozpocząć wyodrębnianie podciągu z indeksu 2, podczas gdy drugie 2 instruuje funkcję, aby zwróciła podciąg o długości tylko 2 znaków. Oznacza to, że wyodrębnianie podciągu powinno rozpoczynać się od elementu znajdującego się pod indeksem 2 ciągu Guru99, czyli r. Ponieważ zwrócony podciąg powinien mieć długość tylko 2 znaków, wyodrębnienie nie przekroczy litery „u”, dlatego zwróciło „ru”.
One Char
Możemy użyć funkcji Substring, aby uzyskać pojedynczy znak z ciągu. W takim przypadku konieczne jest dokonanie alokacji, ale postać jest dostępna bezpośrednio. To jest trochę szybsze. Poniższy przykład ilustruje dwa sposoby, dzięki którym możemy to osiągnąć:
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
Kliknij przycisk Start, aby uruchomić kod. Otrzymasz następujący wynik:
Użyliśmy następującego kodu:
Wyjaśnienie kodu:
- Tworzenie modułu o nazwie Module1.
- Rozpoczęcie głównej podprocedury.
- Zdefiniowanie zmiennej łańcuchowej o nazwie st i przypisanie jej wartości Guru99.
- Zdefiniowanie zmiennej łańcuchowej o nazwie mid1 i uzyskanie znaku o indeksie 1 w String st. Ten znak zostanie przypisany do zmiennej mid1.
- Wydruk powyższego znaku na konsoli.
- Zdefiniowanie zmiennej łańcuchowej o nazwie mid2 i pobranie znaku o indeksie 1 o długości 1 z String st. Długość 1 oznacza, że zwróci ten sam znak w indeksie początkowym. Zliczanie rozpoczyna się od określonego indeksu początkowego. Ten znak zostanie przypisany do zmiennej mid2.
- Wydruk powyższego znaku na konsoli.
- Wstrzymaj okno konsoli na chwilę, czekając, aż użytkownik podejmie akcję, aby je zamknąć.
- Koniec głównej podprocedury.
- Koniec modułu.
Podsumowanie
- Funkcja Substring jest zdefiniowana w klasie String programu Visual Basic.NET.
- Akceptuje dwa argumenty, które są punktem początkowym podłańcucha i jego długością.
- Możemy bawić się tymi argumentami, aby uzyskać różne zestawy podciągów z głównego ciągu.