Strings.Split(String, String, Int32, CompareMethod) Método

Definição

Retorna uma matriz unidimensional baseada em zero que contém um número especificado de subcadeias de caracteres.

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

Parâmetros

Expression
String

Obrigatórios. Expressão String que contém subcadeias de caracteres e delimitadores.

Delimiter
String

Opcional. Qualquer caractere único usado para identificar limites de subcadeia de caracteres. Se Delimiter for omitido, o caractere de espaço (" ") será considerado o delimitador.

Limit
Int32

Opcional. Número máximo de subcadeias de caracteres no qual a cadeia de caracteres de entrada deve ser dividida. O padrão, -1, indica que a cadeia de caracteres de entrada deve ser dividida em cada ocorrência da cadeia de caracteres Delimiter.

Compare
CompareMethod

Opcional. Valor numérico que indica a comparação a ser usada ao avaliar subcadeias de caracteres. Consulte “Configurações” para obter os valores.

Retornos

String[]

Matriz String. Se Expression for uma cadeia de caracteres de tamanho zero (""), Split retornará uma matriz de elemento único que contém uma cadeia de caracteres de tamanho zero. Se Delimiter for uma cadeia de caracteres de tamanho zero ou se ela não for exibida em nenhum lugar em Expression, Split retornará uma matriz de elemento único que contém toda a cadeia de caracteres Expression.

Exemplos

O exemplo a seguir demonstra como dividir uma cadeia de caracteres em seus espaços.

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

O exemplo a seguir demonstra como dividir cadeias de caracteres com vários delimitadores em uma linha e filtrar as cadeias de caracteres vazias.

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

Comentários

Por padrão, ou quando Limit é igual a -1, a Split função divide a cadeia de caracteres de entrada em cada ocorrência da cadeia de caracteres delimitador e retorna as subcadeias de caracteres em uma matriz. Quando o Limit parâmetro for maior que zero, a Split função dividirá a cadeia de caracteres nas primeiras Limit-1 ocorrências do delimitador e retornará uma matriz com as subcadeias de caracteres resultantes. Por exemplo, Split("a:b:c", ":") retorna a matriz {"a", "b", "c"}, enquanto Split("a:b:c", ":", 2) retorna a matriz {"a", "b:c"}.

Quando a Split função encontra dois delimitadores em uma linha ou um delimitador no início ou no final da cadeia de caracteres, ela os interpreta como cercando uma cadeia de caracteres vazia (""). Por exemplo, Split("xx", "x") retorna a matriz que contém três cadeias de caracteres vazias: uma entre o início da cadeia de caracteres e a primeira "x", uma entre as duas cadeias de caracteres "x" e outra entre o último "x" e o final da cadeia de caracteres.

Esta tabela demonstra como os parâmetros opcionais Delimiter, Limite Compare podem alterar o comportamento da Split função.

Chamada dividida Valor Retornado
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 e Bob"}
Split("Alice and Bob", " AND ", ,CompareMethod.Text) {"Alice", "Bob"}
Split("someone@example.com", "@",1) {"someone@example.com"}
Split("someone@example.com", "@",2) {"alguém", "example.com"}

O Compare argumento pode ter os valores a seguir.

Constante Descrição Valor
CompareMethod.Binary Executa uma comparação binária 0
CompareMethod.Text Executa uma comparação textual 1

Aplica-se a

Confira também