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:
- Vytvoření modulu s názvem Module1.
- Spuštění hlavního dílčího postupu.
- Definování řetězcové proměnné s názvem st a přiřazení hodnoty Guru99 k ní.
- 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ů.
- Tisk nějakého textu a výše uvedeného podřetězce na konzole.
- Pozastavení okna konzoly na chvíli a čekání na to, až uživatel provede akci k jeho zavření.
- Konec hlavního dílčího postupu.
- 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:
- Vytvoření modulu s názvem Module1.
- Spuštění hlavního dílčího postupu.
- Definování řetězcové proměnné s názvem st a přiřazení hodnoty Guru99 k ní.
- 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.
- Tisk výše uvedeného znaku na konzole.
- 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.
- Tisk výše uvedeného znaku na konzole.
- Pozastavení okna konzoly na chvíli a čekání na to, až uživatel provede akci k jeho zavření.
- Konec hlavního dílčího postupu.
- 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.