Metoda podřetězců VB.NET s PŘÍKLADEM

Co je podřetězec?

Funkce podřetězec se používá k získání části zadaného řetězce. Tato metoda je definována ve třídě String of Microsoft VB.NET. Musíte zadat počáteční index, ze kterého bude řetězec extrahován. Řetězec bude extrahován z tohoto indexu až do vámi určené délky.

V tomto tutoriálu se to naučíte

Syntaxe podřetězce

Funkce přijímá dva argumenty, jak je znázorněno v následující syntaxi:

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

Zde,

  • Klíčové slovo ByVal označuje pass-by-value, což je mechanismus předávání argumentů funkcím.
  • Start_Index je index, ze kterého bude získán podřetězec
  • sub_length označuje délku, do které bude řetězec zkopírován z počátečního_indexu. Tato délka se měří počtem znaků. Funkce vrátí extrahovaný podřetězec.

Příklady

Krok 1) Vytvořte novou konzolovou aplikaci.

Krok 2) Přidejte do něj následující kód:

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

Krok 3) Kliknutím na tlačítko Start na panelu nástrojů spustíte kód. Měli byste získat následující výsledek:

Použili jsme následující kód:

Vysvětlení kódu:

  1. Vytvoření modulu s názvem Module1.
  2. Spuštění hlavního dílčího postupu.
  3. Definování řetězcové proměnné s názvem st a přiřazení hodnoty Guru99 k ní.
  4. Definování řetězcové proměnné s názvem 'subst' jako podřetězce řetězce 'st' z indexu 0f a délce 4 znaků.
  5. Tisk nějakého textu a výše uvedeného podřetězce na konzole.
  6. Pozastavení okna konzoly na chvíli a čekání na to, až uživatel provede akci k jeho zavření.
  7. Konec hlavního dílčího postupu.
  8. Konec modulu.

Jeden argument

Co když funkci předáme pouze jeden argument? Funkce zkopíruje všechna data v řetězci, který začíná tímto indexem. Co se stane, je, že funkce Substring interně zkopíruje všechna data řetězce v tomto indexu a také data, která následují po tomto indexu. Například:

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

Kliknutím na tlačítko Start spusťte kód. Mělo by vrátit následující:

Funkce podřetězec vrátila 99. Předali jsme funkci parametr 4, což znamená, že začne extrahovat podřetězec ze znaku na indexu 4 na konec řetězce. 9 je znak na indexu 4 řetězce Guru99, proto extrakce začala tam.

Střední postavy

Je také možné, abychom získali střední znaky příslušného řetězce. V tomto případě musíme poskytnout pouze počáteční index a délku řetězce, kterou potřebujeme. V následujícím příkladu získáváme podřetězec zadaného řetězce z indexu 2 a řetězec bude mít délku 2 znaků:

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

Kliknutím na tlačítko Start na panelu nástrojů spusťte kód. Získáte následující výsledek:

Ve výše uvedeném příkladu vrátila funkce podřetězec ru. Parametry (2, 2) jsme předali funkci. První 2 dává funkci pokyn, aby zahájila extrakci podřetězce z indexu 2, zatímco druhá 2 dává funkci pokyn, aby vrátila podřetězec o délce pouze 2 znaků. To znamená, že extrakce podřetězce by měla začít od prvku umístěného na indexu 2 řetězce Guru99, což je r. Vzhledem k tomu, že vrácený podřetězec by měl mít délku pouze 2 znaky, extrakce nepřekročí 'u', a proto vrátí 'ru'.

Jeden Char

K získání jednoho znaku z řetězce můžeme použít funkci Substring. V takovém případě je nutné, abyste provedli alokaci, ale postava je přístupná přímo. Tohle je o něco rychlejší. Následující příklad ukazuje dva způsoby, jak toho můžeme dosáhnout:

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

Kliknutím na tlačítko Start spusťte kód. Získáte následující výsledek:

Použili jsme následující kód:

Vysvětlení kódu:

  1. Vytvoření modulu s názvem Module1.
  2. Spuštění hlavního dílčího postupu.
  3. Definování řetězcové proměnné s názvem st a přiřazení hodnoty Guru99 k ní.
  4. Definování řetězcové proměnné s názvem mid1 a získání znaku na indexu 1 řetězce String st. Tento znak bude přiřazen k proměnné mid1.
  5. Tisk výše uvedeného znaku na konzole.
  6. Definování řetězcové proměnné s názvem mid2 a získání znaku na indexu 1 o délce 1 z String st. Délka 1 znamená, že vrátí stejný znak na počátečním indexu. Počítání začíná od počátečního indexu, který určíte. Tento znak bude přiřazen k proměnné mid2.
  7. Tisk výše uvedeného znaku na konzole.
  8. Pozastavení okna konzoly na chvíli a čekání na to, až uživatel provede akci k jeho zavření.
  9. Konec hlavního dílčího postupu.
  10. Konec modulu.

Shrnutí

  • Funkce Substring je definována ve třídě String jazyka Visual Basic.NET.
  • Přijímá dva argumenty, což je počáteční bod podřetězce a délka podřetězce.
  • S těmito argumenty si můžeme pohrát a získat různé sady podřetězců z hlavního řetězce.