VB.NET-understrengsmetode med EKSEMPEL
Hvad er en understreng?
Understrengsfunktionen bruges til at få en del af en specificeret streng. Denne metode er defineret i String-klassen af Microsoft VB.NET. Du skal angive startindekset, som strengen vil blive udtrukket fra. Strengen vil blive udtrukket fra det indeks op til den længde, du angiver.
I denne tutorial lærer du
Syntaks for understreng
Funktionen accepterer to argumenter som vist i følgende syntaks:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
Her,
- Nøgleordet ByVal angiver pass-by-value, som er en mekanisme til at overføre argumenter til funktioner.
- Start_Index er det indeks, hvorfra understrengen vil blive hentet
- sub_length angiver længden op til hvilken strengen vil blive kopieret fra start_Index. Denne længde måles i forhold til antallet af tegn. Funktionen returnerer den udtrukne understreng.
Eksempler
Trin 1) Opret en ny konsolapplikation.
Trin 2) Tilføj følgende kode til det:
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
Trin 3) Klik på knappen Start på værktøjslinjen for at udføre koden. Du bør få følgende resultat:
Vi har brugt følgende kode:
Forklaring af kode:
- Oprettelse af et modul ved navn Modul1.
- Start af hovedunderproceduren.
- Definerer en strengvariabel ved navn st og tildeler værdien Guru99 til den.
- Definition af en strengvariabel ved navn 'subst' som en understreng af strengen 'st' fra indeks 0f og en længde på 4 tegn.
- Udskrivning af noget tekst og ovenstående understreng på konsollen.
- Sætter konsolvinduet på pause i et stykke tid og venter på, at brugeren foretager handling for at lukke det.
- Afslutning af hovedunderproceduren.
- Slut på modulet.
Et argument
Hvad hvis vi kun sender ét argument til funktionen? Funktionen kopierer alle data i strengen, der begynder fra det indeks. Det, der sker, er, at Substring-funktionen internt kopierer alle strengdata på det indeks såvel som det, der følger efter det indeks. 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
Klik på knappen Start for at køre koden. Det skal returnere følgende:
Understrengsfunktionen returnerede 99. Vi sendte parameter 4 til funktionen, hvilket betyder, at den begynder at udtrække understrengen fra tegnet ved indeks 4 til slutningen af strengen. 9 er tegnet i indeks 4 af strengen Guru99, derfor startede udtrækningen der.
Mellemste tegn
Det er også muligt for os at få de midterste tegn i den pågældende streng. I dette tilfælde skal vi kun angive startindekset og længden af den streng, vi har brug for. I det følgende eksempel får vi en understreng af den angivne streng fra indeks 2, og strengen vil have en længde 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
Klik på knappen Start på værktøjslinjen for at køre koden. Du får følgende resultat:
I ovenstående eksempel returnerede understrengsfunktionen ru. Vi sendte parametrene (2, 2) til funktionen. Den første 2 instruerer funktionen til at begynde udtrækningen af understrengen fra indeks 2, mens den anden 2 instruerer funktionen til at returnere en understreng med en længde på kun 2 tegn. Dette betyder, at udtrækningen af understrengen skal begynde fra elementet placeret ved indeks 2 af strengen Guru99, som er r. Da den returnerede understreng kun skal have en længde på 2 tegn, vil udtrækningen ikke gå forbi 'u'et', og derfor returnerede den 'ru'.
En Char
Vi kan bruge Substring-funktionen til at få et enkelt tegn fra en streng. I et sådant tilfælde er det en nødvendighed for dig at foretage en tildeling, men karakteren kan tilgås direkte. Det her er lidt hurtigere. Følgende eksempel viser to måder, hvorpå vi kan opnå dette:
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
Klik på knappen Start for at køre koden. Du får følgende resultat:
Vi har brugt følgende kode:
Forklaring af kode:
- Oprettelse af et modul ved navn Modul1.
- Start af hovedunderproceduren.
- Definerer en strengvariabel ved navn st og tildeler værdien Guru99 til den.
- Definere en strengvariabel ved navn mid1 og få tegnet ved indeks 1 af String st. Dette tegn vil blive tildelt variablen mid1.
- Udskrivning af ovenstående tegn på konsollen.
- Definere en strengvariabel ved navn mid2 og få tegnet ved indeks 1 med en længde på 1 fra String st. Længden på 1 betyder, at det vil returnere det samme tegn ved startindekset. Optællingen begynder fra det startindeks, som du angiver. Dette tegn vil blive tildelt variablen mid2.
- Udskrivning af ovenstående tegn på konsollen.
- Sætter konsolvinduet på pause i et stykke tid og venter på, at brugeren foretager handling for at lukke det.
- Afslutning af hovedunderproceduren.
- Slut på modulet.
Resumé
- Substring-funktionen er defineret i String-klassen i Visual Basic.NET.
- Den accepterer to argumenter, som er startpunktet for understrengen og længden af understrengen.
- Vi kan lege med disse argumenter for at få forskellige sæt af understrenge fra hovedstrengen.