Metoda subșirului VB.NET cu EXEMPLU

Ce este un SubString?

Funcția subșir este utilizată pentru a obține o parte dintr-un șir specificat. Această metodă este definită în clasa String de Microsoft VB.NET. Trebuie să specificați indexul de început din care va fi extras șirul. Șirul va fi extras din acel index până la lungimea pe care o specificați.

În acest tutorial, veți învăța

Sintaxa subșirului

Funcția acceptă două argumente așa cum se arată în următoarea sintaxă:

Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String

Aici,

  • Cuvântul cheie ByVal denotă pass-by-value, care este un mecanism de transmitere a argumentelor către funcții.
  • Start_Index este indexul din care va fi obținut subșirul
  • sub_length denotă lungimea până la care șirul va fi copiat din start_Index. Această lungime este măsurată în funcție de numărul de caractere. Funcția va returna subșirul extras.

Exemple

Pas 1) Creați o nouă aplicație de consolă.

Pas 2) Adăugați următorul cod la acesta:

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

Pas 3) Faceți clic pe butonul Start din bara de instrumente pentru a executa codul. Ar trebui să obțineți următorul rezultat:

Am folosit următorul cod:

Explicația codului:

  1. Crearea unui modul numit Module1.
  2. Pornirea sub-procedurii principale.
  3. Definirea unei variabile șir numită st și atribuirea valorii Guru99 acesteia.
  4. Definirea unei variabile șir numită „subst” ca subșir al șirului „st” din indexul 0f și o lungime de 4 caractere.
  5. Imprimarea unui text și a subșirului de mai sus pe consolă.
  6. Întrerupeți fereastra consolei pentru un timp, așteptând ca utilizatorul să ia măsuri pentru a o închide.
  7. Sfârșitul subprocedurii principale.
  8. Sfârșitul modulului.

Un singur argument

Ce se întâmplă dacă trecem un singur argument funcției? Funcția va copia toate datele din șirul care începe de la acel index. Ceea ce se întâmplă este că funcția Substring copie în mod intern toate datele șir de la acel index, precum și cele care urmează acelui index. De exemplu:

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

Faceți clic pe butonul Start pentru a rula codul. Ar trebui să returneze următoarele:

Funcția subșir a returnat 99. Am transmis parametrul 4 funcției, ceea ce înseamnă că va începe să extragă subșirul de la caracterul de la indexul 4 până la sfârșitul șirului. 9 este caracterul de la indexul 4 al șirului Guru99, prin urmare extragerea a început acolo.

Personaje din mijloc

De asemenea, este posibil să obținem caracterele din mijloc ale șirului în cauză. În acest caz, trebuie să furnizăm doar indicele de pornire și lungimea șirului de care avem nevoie. În exemplul următor, obținem un subșir al șirului specificat de la indexul 2 și șirul va avea o lungime de 2 caractere:

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

Faceți clic pe butonul Start din bara de instrumente pentru a rula codul. Veți obține următorul rezultat:

În exemplul de mai sus, funcția subșir a returnat ru. Am transmis parametrii (2, 2) funcției. Primul 2 indică funcției să înceapă extragerea subșirului din indexul 2, în timp ce al doilea 2 indică funcției să returneze un subșir cu o lungime de numai 2 caractere. Aceasta înseamnă că extragerea subșirului ar trebui să înceapă de la elementul situat la indexul 2 al șirului Guru99, care este r. Deoarece subșirul returnat ar trebui să aibă doar o lungime de 2 caractere, extragerea nu va trece de „u”, prin urmare a returnat „ru”.

Un Char

Putem folosi funcția Substring pentru a obține un singur caracter dintr-un șir. Într-un astfel de caz, este o necesitate pentru tine să faci o alocare, dar personajul poate fi accesat direct. Acesta este un pic mai rapid. Următorul exemplu demonstrează două moduri prin care putem realiza acest lucru:

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

Faceți clic pe butonul Start pentru a rula codul. Veți obține următorul rezultat:

Am folosit următorul cod:

Explicația codului:

  1. Crearea unui modul numit Module1.
  2. Pornirea sub-procedurii principale.
  3. Definirea unei variabile șir numită st și atribuirea valorii Guru99 acesteia.
  4. Definirea unei variabile șir numită mid1 și obținerea caracterului de la indexul 1 al String st. Acest caracter va fi atribuit variabilei mid1.
  5. Tipărirea caracterului de mai sus pe consolă.
  6. Definirea unei variabile șir numită mid2 și obținerea caracterului la indexul 1 cu o lungime de 1 din String st. Lungimea lui 1 înseamnă că va returna același caracter la indexul de pornire. Numărarea începe de la indexul de pornire pe care îl specificați. Acest caracter va fi atribuit variabilei mid2.
  7. Tipărirea caracterului de mai sus pe consolă.
  8. Întrerupeți fereastra consolei pentru un timp, așteptând ca utilizatorul să ia măsuri pentru a o închide.
  9. Sfârșitul subprocedurii principale.
  10. Sfârșitul modulului.

Rezumat

  • Funcția Substring este definită în clasa String din Visual Basic.NET.
  • Acceptă două argumente, care este punctul de pornire al subșirului și lungimea subșirului.
  • Ne putem juca cu aceste argumente pentru a obține diverse seturi de subșiruri din șirul principal.