Compartir vía


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

Definición

Devuelve una matriz unidimensional basada en cero que contiene un número especificado de subcadenas.

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

Obligatorio. Expresión de tipo String que contiene subcadenas y delimitadores.

Delimiter
String

Opcional. Cualquier carácter individual que se utilice para identificar los límites de las subcadenas. Si se omite Delimiter, se supone que el carácter de espacio (" ") es el delimitador.

Limit
Int32

Opcional. Número máximo de subcadenas en las que se debe dividir la cadena de entrada. El valor predeterminado es -1, que indica que la cadena de entrada se debe dividir cada vez que aparece la cadena Delimiter.

Compare
CompareMethod

Opcional. Valor numérico que indica la comparación que se va a utilizar al evaluar subcadenas. Consulte los valores en "Configuración".

Devoluciones

String[]

Matriz de tipoString . Si Expression es una cadena de longitud cero (""), Split devuelve una matriz de un solo elemento que contiene una cadena de longitud cero. Si Delimiter es una cadena de longitud cero o si no aparece en Expression, Split devuelve una matriz de un solo elemento que contiene toda la cadena Expression.

Ejemplos

En el ejemplo siguiente se muestra cómo dividir una cadena en sus espacios.

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

En el ejemplo siguiente se muestra cómo dividir cadenas con varios delimitadores en una fila y filtrar las cadenas vacías.

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

Comentarios

De forma predeterminada, o cuando Limit es igual a -1, la Split función divide la cadena de entrada en cada aparición de la cadena delimitador y devuelve las subcadenas en una matriz. Cuando el Limit parámetro es mayor que cero, la Split función divide la cadena en las primeras Limitrepeticiones -1 del delimitador y devuelve una matriz con las subcadenas resultantes. Por ejemplo, Split("a:b:c", ":") devuelve la matriz {"a", "b", "c"}, mientras Split("a:b:c", ":", 2) que devuelve la matriz {"a", "b:c"}.

Cuando la Split función encuentra dos delimitadores en una fila o un delimitador al principio o al final de la cadena, los interpreta como rodeando una cadena vacía (""). Por ejemplo, Split("xx", "x") devuelve la matriz que contiene tres cadenas vacías: una desde el principio de la cadena y la primera "x", una de entre las dos cadenas "x" y otra de entre la última "x" y el final de la cadena.

En esta tabla se muestra cómo los parámetros opcionales Delimiter, Limity Compare pueden cambiar el comportamiento de la Split función.

Llamada dividida Valor devuelto
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 y Bob"}
Split("Alice and Bob", " AND ", ,CompareMethod.Text) {"Alice", "Bob"}
Split("someone@example.com", "@",1) {"someone@example.com"}
Split("someone@example.com", "@",2) {"alguien", "example.com"}

El Compare argumento puede tener los valores siguientes.

Constante Descripción Valor
CompareMethod.Binary Realiza una comparación binaria 0
CompareMethod.Text Realiza una comparación textual 1

Se aplica a

Consulte también