lang • split

Split

Matriz de Cadenas = Split ( Cadena AS String [ , Separadores AS String , Escape AS String , Ignorar nulos AS Boolean ] )

Matriz de Cadenas = Split ( Cadena AS String [ , Separadores AS String , Escape AS String , IgnorarNulos AS Boolean , MantenerEscape AS Boolean ] )

Divide una cadena en subcadenas delimitadas por separadores y caracteres de escape.

  • Cadena es la cadena a dividir.

  • Separadores es la lista de caracteres separadores.

  • Escape es un caracter de escape. Cualquier separador rodeado de dos caracteres de escape es ignorado en el proceso de división. Si Escape contiene dos caracteres, el primero se considera el caracter inicial de escape, y el segundo el final.

  • Ignore nulos indica a Split() que no debe devolver elementos vacíos.

  • MantenerEscape mantiene en las cadenas devueltas los caracteres de escape encontrados.

Esta función devuelve una matriz de cadenas rellenada con las subcadenas detectadas. Los separadores y caracteres de escape no se devuelven.

Esta función devuelve una matriz de cadenas rellenada con las subcadenas detectadas. Los separadores y caracteres de escape se devuelven o no de acuerdo al valor de MantenerEscape.

Por defecto, el caracter "coma" es el separador, y no hay caracteres de escape.

Si una cadena contiene caracteres de escape, entonces estos caracteres de escape deben ser duplicados.

Separador y caracteres de escape son solo un simple byte de caracteres ASCII. No puede utilizar esta función para separar cadenas que contengan caracteres no ASCII o alguna cadena determinada.

Por ejemplo: Split(MiCadena, "\r\n") dividirá Micadena utilizando "\r" o "\n" como separadores, pero no "\r\n" en conjunto como si fuera una cadena separadora.

Examples

DIM Elt AS String[]
DIM Sb AS String

Elt = Split(" Gambas Almost Means BASIC  !\n'¿ Está de acuerdo ?'", " \n", "'")

FOR EACH Sb IN Elt
  PRINT "("; Sb; ") ";
NEXT
PRINT
() (Gambas) (Almost) (Means) (BASIC) () (!) (? Está de acuerdo ?)
Elt = Split(" Gambas Almost Means BASIC  !\n'¿ Está de acuerdo ?'", " \n", "'", TRUE)

FOR EACH Sb IN Elt
  PRINT "("; Sb; ") ";
NEXT
PRINT
(Gambas) (Almost) (Means) (BASIC) (!) (¿ Está de acuerdo ?)
Elt = Split("(Gambas) (Almost) (Means) (BASIC) (!) (¿ Está de acuerdo ?)", " ", "()")

FOR EACH Sb IN Elt
  PRINT Sb; ".";
NEXT
PRINT
Gambas.Almost.Means.BASIC.!.¿ Está de acuerdo ?.

Véase también