VB.NET-delsträngsmetod med EXEMPEL
Vad är en delsträng?
Delsträngsfunktionen används för att erhålla en del av en specificerad sträng. Denna metod är definierad i String-klassen för Microsoft VB.NET. Du måste ange startindexet från vilket strängen ska extraheras. Strängen kommer att extraheras från det indexet upp till den längd som du anger.
I den här handledningen kommer du att lära dig
Syntax för delsträng
Funktionen accepterar två argument som visas i följande syntax:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
Här,
- Nyckelordet ByVal anger pass-by-value, vilket är en mekanism för att skicka argument till funktioner.
- Start_Index är indexet från vilket delsträngen kommer att erhållas
- sub_length anger längden upp till vilken strängen kommer att kopieras från start_Index. Denna längd mäts i termer av antalet tecken. Funktionen returnerar den extraherade delsträngen.
Exempel
Steg 1) Skapa en ny konsolapplikation.
Steg 2) Lägg till följande kod till den:
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
Steg 3) Klicka på Start-knappen i verktygsfältet för att köra koden. Du bör få följande resultat:
Vi har använt följande kod:
Förklaring av kod:
- Skapa en modul som heter Module1.
- Startar huvuddelproceduren.
- Definiera en strängvariabel med namnet st och tilldela värdet Guru99 till den.
- Definiera en strängvariabel med namnet 'subst' som en understräng av strängen 'st' från index 0f och en längd på 4 tecken.
- Skriver ut lite text och ovanstående delsträng på konsolen.
- Pausar konsolfönstret en stund i väntan på att användaren ska vidta åtgärder för att stänga det.
- Slut på det huvudsakliga underförfarandet.
- Slutet på modulen.
Ett argument
Vad händer om vi bara skickar ett argument till funktionen? Funktionen kopierar all data i strängen som börjar från det indexet. Det som händer är att Substring-funktionen internt kopierar all strängdata vid det indexet såväl som det som följer på det indexet. Till exempel:
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
Klicka på Start-knappen för att köra koden. Det bör returnera följande:
Delsträngsfunktionen returnerade 99. Vi skickade parametern 4 till funktionen, vilket betyder att den kommer att börja extrahera delsträngen från tecknet vid index 4 till slutet av strängen. 9 är tecknet i index 4 i strängen Guru99, därför startade extraktionen där.
Mellersta tecken
Det är också möjligt för oss att få mittenkaraktärerna i den aktuella strängen. I det här fallet behöver vi bara ange startindexet och längden på strängen som vi behöver. I följande exempel får vi en delsträng av den angivna strängen från index 2 och strängen kommer att ha en längd på 2 tecken:
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
Klicka på Start-knappen i verktygsfältet för att köra koden. Du får följande resultat:
I exemplet ovan returnerade delsträngsfunktionen ru. Vi skickade parametrarna (2, 2) till funktionen. Den första 2 instruerar funktionen att börja extrahera delsträngen från index 2 medan den andra 2 instruerar funktionen att returnera en delsträng med en längd på endast 2 tecken. Detta betyder att extraheringen av delsträngen ska börja från elementet som finns vid index 2 av strängen Guru99, vilket är r. Eftersom den returnerade delsträngen endast ska ha en längd på 2 tecken, kommer extraktionen inte att gå förbi "u", därför returnerade den "ru."
En Röding
Vi kan använda Substring-funktionen för att få ett enstaka tecken från en sträng. I ett sådant fall är det en nödvändighet för dig att göra en tilldelning men karaktären kan nås direkt. Det här är lite snabbare. Följande exempel visar två sätt genom vilka vi kan uppnå detta:
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
Klicka på Start-knappen för att köra koden. Du får följande resultat:
Vi har använt följande kod:
Förklaring av kod:
- Skapa en modul som heter Module1.
- Startar huvuddelproceduren.
- Definiera en strängvariabel med namnet st och tilldela värdet Guru99 till den.
- Definiera en strängvariabel med namnet mid1 och hämta tecknet vid index 1 av String st. Detta tecken kommer att tilldelas variabeln mid1.
- Skriver ut ovanstående tecken på konsolen.
- Definiera en strängvariabel med namnet mid2 och hämta tecknet vid index 1 med längden 1 från String st. Längden på 1 betyder att den kommer att returnera samma tecken vid startindexet. Räkningen börjar från startindexet som du anger. Detta tecken kommer att tilldelas variabeln mid2.
- Skriver ut ovanstående tecken på konsolen.
- Pausar konsolfönstret en stund i väntan på att användaren ska vidta åtgärder för att stänga det.
- Slut på det huvudsakliga underförfarandet.
- Slutet på modulen.
Sammanfattning
- Substring-funktionen är definierad i String-klassen i Visual Basic.NET.
- Den accepterar två argument, som är startpunkten för delsträngen och längden på delsträngen.
- Vi kan leka med dessa argument för att få olika uppsättningar av delsträngar från huvudsträngen.