VB.NET-delstrengmetode med EKSEMPEL
Hva er en understreng?
Delstrengfunksjonen brukes til å få en del av en spesifisert streng. Denne metoden er definert i String-klassen til Microsoft VB.NET. Du må spesifisere startindeksen som strengen skal trekkes ut fra. Strengen vil bli trukket ut fra den indeksen opp til lengden du angir.
I denne opplæringen lærer du
Syntaks for understreng
Funksjonen godtar to argumenter som vist i følgende syntaks:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
Her
- ByVal-nøkkelordet angir pass-by-value, som er en mekanisme for å sende argumenter til funksjoner.
- Start_Index er indeksen som delstrengen vil bli hentet fra
- sub_length angir lengden opp til som strengen vil bli kopiert fra start_Index. Denne lengden måles i form av antall tegn. Funksjonen vil returnere den utpakkede delstrengen.
Eksempler
Trinn 1) Opprett en ny konsollapplikasjon.
Trinn 2) Legg til følgende kode:
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
Trinn 3) Klikk på Start-knappen fra verktøylinjen for å utføre koden. Du bør få følgende resultat:
Vi har brukt følgende kode:
Forklaring av kode:
- Opprette en modul kalt Module1.
- Starter hovedunderprosedyren.
- Definere en strengvariabel kalt st og tilordne verdien Guru99 til den.
- Definere en strengvariabel kalt 'subst' som en understreng av strengen 'st' fra indeks 0f og en lengde på 4 tegn.
- Skriver ut litt tekst og understrengen ovenfor på konsollen.
- Setter konsollvinduet på pause en stund mens du venter på at brukeren skal gjøre noe for å lukke det.
- Slutt på hoveddelprosedyren.
- Slutt på modulen.
Ett argument
Hva om vi sender bare ett argument til funksjonen? Funksjonen vil kopiere alle dataene i strengen som starter fra den indeksen. Det som skjer er at Substring-funksjonen internt kopierer alle strengdataene på den indeksen så vel som den som følger den indeksen. For eksempel:
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
Klikk på Start-knappen for å kjøre koden. Den skal returnere følgende:
Delstrengfunksjonen returnerte 99. Vi sendte parameter 4 til funksjonen, noe som betyr at den vil begynne å trekke ut delstrengen fra tegnet ved indeks 4 til slutten av strengen. 9 er tegnet i indeks 4 av strengen Guru99, derav startet utvinningen der.
Mellomste tegn
Det er også mulig for oss å få de midterste tegnene til den aktuelle strengen. I dette tilfellet trenger vi bare å oppgi startindeksen og lengden på strengen vi trenger. I følgende eksempel får vi en understreng av den angitte strengen fra indeks 2, og strengen vil ha en lengde på 2 tegn:
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
Klikk på Start-knappen fra verktøylinjen for å kjøre koden. Du vil få følgende resultat:
I eksemplet ovenfor returnerte delstrengfunksjonen ru. Vi sendte parameterne (2, 2) til funksjonen. Den første 2 instruerer funksjonen til å begynne utvinningen av delstrengen fra indeks 2, mens den andre 2 instruerer funksjonen om å returnere en delstreng med en lengde på kun 2 tegn. Dette betyr at ekstraksjonen av delstrengen skal begynne fra elementet som ligger ved indeks 2 av strengen Guru99, som er r. Siden den returnerte delstrengen bare skal ha en lengde på 2 tegn, vil ikke ekstraksjonen gå forbi 'u'en, og derfor returnerte den 'ru.'
En røye
Vi kan bruke Substring-funksjonen for å få et enkelt tegn fra en streng. I et slikt tilfelle er det en nødvendighet for deg å gjøre en tildeling, men karakteren kan nås direkte. Dette er litt raskere. Følgende eksempel viser to måter vi kan oppnå dette på:
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
Klikk på Start-knappen for å kjøre koden. Du vil få følgende resultat:
Vi har brukt følgende kode:
Forklaring av kode:
- Opprette en modul kalt Module1.
- Starter hovedunderprosedyren.
- Definere en strengvariabel kalt st og tilordne verdien Guru99 til den.
- Definere en strengvariabel kalt mid1 og få tegnet ved indeks 1 av String st. Dette tegnet vil bli tildelt variabelen mid1.
- Skriver ut tegnet ovenfor på konsollen.
- Definere en strengvariabel kalt mid2 og få tegnet ved indeks 1 med lengden 1 fra String st. Lengden på 1 betyr at den vil returnere det samme tegnet ved startindeksen. Tellingen starter fra startindeksen du angir. Dette tegnet vil bli tildelt variabelen mid2.
- Skriver ut tegnet ovenfor på konsollen.
- Setter konsollvinduet på pause en stund mens du venter på at brukeren skal gjøre noe for å lukke det.
- Slutt på hoveddelprosedyren.
- Slutt på modulen.
Sammendrag
- Substring-funksjonen er definert i String-klassen til Visual Basic.NET.
- Den godtar to argumenter, som er startpunktet til delstrengen og lengden på delstrengen.
- Vi kan leke med disse argumentene for å få forskjellige sett med understrenger fra hovedstrengen.






