Strings.Split(String, String, Int32, CompareMethod) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Devolve uma matriz unidimensional baseada em zero que contém um número especificado de subcadeias.
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
Required.
String expressão contendo subcadeias e delimitadores.
- Delimiter
- String
Optional. Qualquer carácter individual usado para identificar limites de substrings. Se Delimiter for omitido, assume-se que o carácter de espaço (" ") é o delimitador.
- Limit
- Int32
Optional. Número máximo de substrings em que a cadeia de entrada deve ser dividida. O padrão, -1, indica que a cadeia de entrada deve ser dividida em cada ocorrência da Delimiter sequência.
- Compare
- CompareMethod
Optional. Valor numérico que indica a comparação a usar ao avaliar substrings. Veja "Definições" para os valores.
Devoluções
String matriz. Se Expression for uma cadeia de comprimento zero (""), Split devolve um array de elemento único contendo uma cadeia de comprimento zero. Se Delimiter for uma cadeia de comprimento zero, ou se não aparecer em lado nenhum em Expression, Split devolve um array de elemento único contendo toda a Expression cadeia.
Exemplos
O exemplo seguinte demonstra como separar uma cadeia nos 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 seguinte demonstra como separar cadeias com múltiplos delimitadores consecutivos e filtrar as cadeias 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"}
Observações
Por defeito, ou quando Limit é igual a -1, a Split função divide a cadeia de entrada em cada ocorrência da cadeia delimitadora e devolve as substrings num array. Quando o Limit parâmetro é maior que zero, a Split função divide a cadeia nas primeiras Limitocorrências -1 do delimitador e devolve um array com as subcadeias resultantes. Por exemplo, Split("a:b:c", ":") devolve o array {"a", "b", "c"}, enquanto Split("a:b:c", ":", 2) devolve o array {"a", "b:c"}.
Quando a Split função encontra dois delimitadores numa linha, ou um delimitador no início ou fim da cadeia, interpreta-os como envolvendo uma cadeia vazia (""). Por exemplo, Split("xx", "x") devolve o array que contém três cadeias vazias: uma entre o início da cadeia e o primeiro "x", uma entre as duas cadeias "x" e uma entre o último "x" e o fim da cadeia.
Esta tabela demonstra como os parâmetros opcionais Delimiter, Limit, e Compare podem alterar o comportamento da Split função.
| Chamada Dividida | Valor de retorno |
|---|---|
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 seguintes valores.
| Constante | Description | Value |
|---|---|---|
CompareMethod.Binary |
Realiza uma comparação binária | 0 |
CompareMethod.Text |
Realiza uma comparação textual | 1 |