Udostępnij za pośrednictwem


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

Definicja

Zwraca tablicę jednowymiarową opartą na zera, zawierającą określoną liczbę podciągów.

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

Wymagane. String wyrażenie zawierające podciągy i ograniczniki.

Delimiter
String

Opcjonalny. Każdy pojedynczy znak używany do identyfikowania limitów podciągów. Jeśli Delimiter zostanie pominięty, przyjmuje się, że znak spacji (" ") jest ogranicznikiem.

Limit
Int32

Opcjonalny. Maksymalna liczba podciągów, w których należy podzielić ciąg wejściowy. Wartość domyślna -1 wskazuje, że ciąg wejściowy powinien być podzielony w każdym wystąpieniu Delimiter ciągu.

Compare
CompareMethod

Opcjonalny. Wartość liczbowa wskazująca porównanie do użycia podczas oceniania podciągów. W przypadku wartości zobacz sekcję „Ustawienia".

Zwraca

String[]

String Tablicy. Jeśli Expression jest ciągiem o zerowej długości (""), Split zwraca tablicę jednoelementową zawierającą ciąg o zerowej długości. Jeśli Delimiter jest ciągiem o zerowej długości lub jeśli nie pojawia się nigdzie w Expressionelemecie , Split zwraca tablicę jednoelementową zawierającą cały Expression ciąg.

Przykłady

W poniższym przykładzie pokazano, jak podzielić ciąg na jego przestrzenie.

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

W poniższym przykładzie pokazano, jak podzielić ciągi z wieloma ogranicznikami w wierszu i odfiltrować puste ciągi.

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"}

Uwagi

Domyślnie lub gdy Limit jest równa -1, Split funkcja dzieli ciąg wejściowy na każde wystąpienie ciągu ogranicznika i zwraca podciąg w tablicy. Limit Gdy parametr jest większy niż zero, Split funkcja dzieli ciąg na pierwsze Limit-1 wystąpienia ogranicznika i zwraca tablicę z wynikowymi podciągami. Na przykład zwraca tablicę {"a", "b", "c"}, a funkcja Split("a:b:c", ":", 2) zwraca tablicę {"a", "b:c"}. Split("a:b:c", ":")

Gdy Split funkcja napotka dwa ograniczniki w wierszu lub ogranicznik na początku lub na końcu ciągu, interpretuje je jako otaczające pusty ciąg (""). Na przykład Split("xx", "x") zwraca tablicę zawierającą trzy puste ciągi: jeden od początku ciągu i pierwszy "x", jeden z między dwoma ciągami "x" i jeden z między ostatnim "x" a końcem ciągu.

W tej tabeli pokazano, jak opcjonalne Delimiterparametry , Limiti Compare mogą zmieniać zachowanie Split funkcji.

Podziel wywołanie Wartość zwracana
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 i Bob"}
Split("Alice and Bob", " AND ", ,CompareMethod.Text) {"Alice", "Bob"}
Split("someone@example.com", "@",1) {"someone@example.com"}
Split("someone@example.com", "@",2) {"ktoś", "example.com"}

Argument Compare może mieć następujące wartości.

Stała Opis Wartość
CompareMethod.Binary Wykonuje porównanie binarne 0
CompareMethod.Text Wykonuje porównanie tekstowe 1

Dotyczy

Zobacz też