Split-Funktion (Visual Basic)

Aktualisiert: November 2007

Gibt ein nullbasiertes, eindimensionales Array zurück, das eine angegebene Anzahl von Teilzeichenfolgen enthält.

Function Split(
   ByVal Expression As String,
   Optional ByVal Delimiter As String = " ",
   Optional ByVal Limit As Integer = -1,
   Optional ByVal Compare As CompareMethod = CompareMethod.Binary
) As String()

Parameter

  • Expression
    Erforderlich. String-Ausdruck, der Teilzeichenfolgen und Trennzeichen enthält.

  • Delimiter
    Optional. Ein einzelnes Zeichen, mit dem die Grenzen von Teilzeichenfolgen identifiziert werden. Wenn Delimiter ausgelassen wird, wird das Leerstellenzeichen (" ") als Trennzeichen verwendet.

  • Limit
    Optional. Maximale Anzahl von Teilzeichenfolgen, in die die Eingabezeichenfolge geteilt werden soll. Der Standardwert –1 gibt an, dass die Eingabezeichenfolge bei jedem Vorkommen der Delimiter-Zeichenfolge geteilt werden soll.

  • Compare
    Optional. Numerischer Wert, der angibt, wie beim Auswerten von Teilzeichenfolgen verglichen werden soll. Werte finden Sie im Abschnitt "Einstellungen".

Rückgabewert

String-Array. Wenn Expression eine Zeichenfolge mit der Länge 0 (null, "") ist, gibt Split ein Array mit einem Element zurück, das eine Zeichenfolge mit der Länge 0 (null) enthält. Wenn Delimiter eine Zeichenfolge mit der Länge 0 (null) ist oder wenn es nirgendwo in Expression vorhanden ist, gibt Split ein Array mit einem Element zurück, das die gesamte Expression-Zeichenfolge enthält.

Einstellungen

Das Compare-Argument kann die folgenden Werte haben.

Konstante

Beschreibung

Wert

CompareMethod.Binary

Führt einen binären Vergleich durch

0

CompareMethod.Text

Führt einen Textvergleich durch

1

Hinweise

Standardmäßig, oder wenn Limit den Wert –1 hat, teilt die Split-Funktion die Eingabezeichenfolge bei jedem Auftreten der Trennzeichenfolge und gibt die Teilzeichenfolgen in einem Array zurück. Wenn der Limit-Parameter größer ist als 0 (null), trennt die Split-Funktion die Zeichenfolge beim ersten Limit-1-Auftreten des Trennzeichens und gibt ein Array mit den resultierenden Teilzeichenfolgen zurück. Split("a:b:c", ":") gibt z. B. das Array {"a", "b", "c"} zurück, während Split("a:b:c", ":", 2) das Array {"a", "b:c"} zurückgibt.

Wenn die Split-Funktion auf zwei aufeinander folgende Trennzeichen stößt oder auf ein Trennzeichen am Anfang bzw. Ende der Zeichenfolge, werden sie als Trennzeichen interpretiert, die eine leere Zeichenfolge ("") umschließen. Split("xx", "x") gibt z. B. ein Array mit drei leeren Zeichenfolgen zurück: eine Zeichenfolge aus dem Abschnitt zwischen dem Anfang der Zeichenfolge und dem ersten "x", eine Zeichenfolge aus dem Abschnitt zwischen den beiden "x"-Zeichenfolgen und eine Zeichenfolge aus dem Abschnitt zwischen dem letzten "x" und dem Ende der Zeichenfolge.

Die folgende Tabelle zeigt, wie die optionalen Parameter Delimiter, Limit und Compare das Verhalten der Split-Funktion ändern können.

Split-Aufruf

Rückgabewert

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

Beispiel

Das folgende Beispiel zeigt, wie eine Zeichenfolge an ihren Leerzeichen geteilt wird.

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

Das folgende Beispiel zeigt, wie Zeichenfolgen mit mehreren aufeinander folgenden Trennzeichen getrennt und die leeren Zeichenfolgen herausgefiltert werden.

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

Anforderungen

Namespace:Microsoft.VisualBasic

**Modul:**Strings

**Assembly:**Visual Basic Runtime Library (in Microsoft.VisualBasic.dll)

Siehe auch

Referenz

Zeichenfolgenbearbeitung: Zusammenfassung

Join-Funktion (Visual Basic)

CompareMethod-Enumeration