La función Splitter.SplitTextByEachDelimiter devuelve una función que divide el texto que recibe como argumento en bloques separados por los delimitadores incluidos como argumento en el orden en el que se indican.
Splitter.SplitTextByEachDelimiter(
delimiters as list,
optional quoteStyle as nullable number,
optional startAtEnd as nullable logical
) as function
- delimiters: lista conteniendo los delimitadores a usar para dividir el texto
- quoteStyle: (opcional) método de interpretación de las comillas
- startAtEnd: (opcional) valor que determina si los bloques se forman desde el comienzo del texto o desde el final
Si el parámetro startAtEnd toma el valor true, los grupos comenzarán a crearse desde el final de la cadena de texto, recorriéndose ésta de derecha a izquierda.
La diferencia entre Splitter.SplitTextByEachDelimiter y Splitter.SplitTextByAnyDelimiter es que, en la primera, la función busca los separadores indicados y los aplica en el texto en el orden en el que se incluyen. Por ejemplo, si la lista de delimitadores es {".", ",") -un punto y una coma-, la función considerará como primer bloque a extraer el que va desde el comienzo del texto hasta la aparición del primer punto (sin incluirlo), como segundo bloque el que va desde dicho punto hasta la primera aparición de la coma tras el punto (sin incluir ninguno de los dos caracteres) y como tercer bloque el que va desde dicha coma hasta el final (sin incluir la coma).
Splitter.SplitTextByAnyDelimiter, por el contrario, va a considerar separadores cualquier ocurrencia de los caracteres indicados, con independencia de dónde aparezcan.
En este ejemplo partimos de un texto y usamos la función Splitter.SplitTextByEachDelimiter para dividirlo en los bloques delimitados por el primer punto que aparezca (".") y la primera coma que aparezca después de dicho punto (","):
let
text = "InteractiveChaos.com, data.science"
in
Splitter.SplitTextByEachDelimiter(
{".", ","}
)(text)