Sdílet prostřednictvím


Strings.Split(String, String, Int32, CompareMethod) Metoda

Definice

Vrátí jednorozměrnou matici založenou na nule obsahující zadaný počet podřetětčí.

public static string[] Split (string? Expression, string? Delimiter = " ", int Limit = -1, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
public static string[] Split (string Expression, string Delimiter = " ", int Limit = -1, Microsoft.VisualBasic.CompareMethod Compare = Microsoft.VisualBasic.CompareMethod.Binary);
static member Split : string * string * int * Microsoft.VisualBasic.CompareMethod -> string[]
Public Function Split (Expression As String, Optional Delimiter As String = " ", Optional Limit As Integer = -1, Optional Compare As CompareMethod = Microsoft.VisualBasic.CompareMethod.Binary) As String()

Parametry

Expression
String

Povinná hodnota. String výraz obsahující podřetězence a oddělovače.

Delimiter
String

Nepovinný parametr. Libovolný jeden znak použitý k identifikaci omezení podřetětce. Pokud Delimiter je vynechán, znak mezery (" ") je považován za oddělovač.

Limit
Int32

Nepovinný parametr. Maximální počet podřetězc, do kterých by měl být vstupní řetězec rozdělen. Výchozí hodnota -1 označuje, že vstupní řetězec by měl být rozdělen při každém výskytu Delimiter řetězce.

Compare
CompareMethod

Nepovinný parametr. Číselná hodnota označující porovnání, které se má použít při vyhodnocování podřetěc. Hodnoty naleznete v části „Nastavení“.

Návraty

String[]

String Pole. Pokud Expression je řetězec nulové délky (""), Split vrátí pole s jedním prvkem obsahující řetězec nulové délky. Pokud Delimiter je řetězec nulové délky nebo pokud se nezobrazí nikde v Expression, Split vrátí pole s jedním prvkem obsahující celý Expression řetězec.

Příklady

Následující příklad ukazuje, jak rozdělit řetězec v jeho mezerách.

Dim testString As String = "Look at these!"
' Returns an array containing "Look", "at", and "these!".
Dim testArray() As String = Split(testString)

Následující příklad ukazuje, jak rozdělit řetězce s více oddělovači v řádku a vyfiltrovat prázdné řetězce.

Dim testString As String = "apple    pear banana  "
Dim testArray() As String = Split(testString)
' testArray holds {"apple", "", "", "", "pear", "banana", "", ""}
Dim lastNonEmpty As Integer = -1
For i As Integer = 0 To testArray.Length - 1
    If testArray(i) <> "" Then
        lastNonEmpty += 1
        testArray(lastNonEmpty) = testArray(i)
    End If
Next
ReDim Preserve testArray(lastNonEmpty)
' testArray now holds {"apple", "pear", "banana"}

Poznámky

Ve výchozím nastavení, nebo pokud Limit se rovná -1, Split funkce rozdělí vstupní řetězec při každém výskytu řetězce oddělovače a vrátí podřetězcece v poli. Limit Pokud je parametr větší než nula, Split funkce rozdělí řetězec při prvních Limit-1 výskytech oddělovače a vrátí pole s výslednými podřetězci. Split("a:b:c", ":") Například vrátí matici {"a", "b", "c"}, zatímco Split("a:b:c", ":", 2) vrátí matici {"a", "b:c"}.

Split Když funkce narazí na dva oddělovače v řádku nebo na oddělovači na začátku nebo konci řetězce, interpretuje je jako obklopující prázdný řetězec (""). Vrátí například Split("xx", "x") pole obsahující tři prázdné řetězce: jeden od začátku řetězce do prvního "x", jeden z mezi dvěma řetězci "x" a jeden z mezi posledním "x" a konec řetězce.

Tato tabulka ukazuje, jak volitelné Delimiterparametry , Limita Compare mohou změnit chování Split funkce.

Rozdělit hovor Návratová hodnota
Split("42, 12, 19") {"42," , "12," , "19"}
Split("42, 12, 19", ", ") {"42", "12", "19"}
Split("42, 12, 19", ", ", 2) {"42", "12, 19"}
Split("192.168.0.1", ".") {"192", "168", "0", "1"}
Split("Alice and Bob", " AND ") {"Alice a Bob"}
Split("Alice and Bob", " AND ", ,CompareMethod.Text) {"Alice", "Bob"}
Split("someone@example.com", "@",1) {"someone@example.com"}
Split("someone@example.com", "@",2) {"someone", "example.com"}

Argument Compare může mít následující hodnoty.

Konstanta Description Hodnota
CompareMethod.Binary Provádí binární porovnání. 0
CompareMethod.Text Provádí textové porovnání. 1

Platí pro

Viz také