Strings.Split(String, String, Int32, CompareMethod) Метод

Определение

Возвращает одномерный массив (с индексацией от нуля), содержащий указанное число подстрок.

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()

Параметры

Expression
String

Обязательный. Выражение типа String, содержащее подстроки и разделители.

Delimiter
String

Необязательный элемент. Одиночный знак, используемый для обозначения границ подстроки. Если аргумент Delimiter опущен, в качестве разделителя используется знак пробела (" ").

Limit
Int32

Необязательный элемент. Максимальное число подстрок, на которые должна быть разделена входная строка. Значение по умолчанию –1 указывает, что входная строка должна быть разбита в местах каждого из вхождений строки Delimiter.

Compare
CompareMethod

Необязательный элемент. Числовое значение, которое указывает вид сравнения, выполняемого при оценке подстрок. Сведения о значениях см. в разделе "Параметры".

Возвращаемое значение

String[]

Массив String. Если Expression является строкой нулевой длины (""), функция Split возвращает одноэлементный массив, содержащий строку нулевой длины. Если Delimiter является строкой нулевой длины, или он нигде не найден в параметре Expression, функция Split возвращает одноэлементный массив, содержащий всю строку Expression.

Примеры

В следующем примере показано, как разделить строку на его пробелы.

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

В следующем примере показано, как разделить строки с несколькими разделителями в строке и отфильтровать пустые строки.

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

Комментарии

По умолчанию или при Limit значении -1 Split функция разбивает входную строку на каждое вхождение строки разделителя и возвращает подстроки в массиве. Limit Если параметр больше нуля, Split функция разделяет строку в первых Limitвхождений разделителя -1 и возвращает массив с результирующей подстрокой. Например, Split("a:b:c", ":") возвращает массив {"a", "b", "c"}, а Split("a:b:c", ":", 2) возвращает массив {"a", "b:c"}.

Split Когда функция встречает два разделителя в строке или разделитель в начале или конце строки, она интерпретирует их как окружающие пустую строку (""). Например, возвращает массив, Split("xx", "x") содержащий три пустые строки: один из первых строк и первый "x", один из двух строк "x" и один из последних "x" и конец строки.

В этой таблице показано, как необязательные Delimiter``Limitпараметры и Compare параметры могут изменять поведение Split функции.

Разделение звонка Возвращаемое значение
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 ") {"Алиса и Боб"}
Split("Alice and Bob", " AND ", ,CompareMethod.Text) {"Алиса", "Боб"}
Split("someone@example.com", "@",1) {"someone@example.com"}
Split("someone@example.com", "@",2) {"someone", "example.com"}

Аргумент Compare может иметь следующие значения.

Константа Описание Значение
CompareMethod.Binary Выполняет двоичное сравнение 0
CompareMethod.Text Выполняет текстовое сравнение 1

Применяется к

См. также раздел