Separar una cadena con Split()

Split(), divide una cadena de texto en una tabla de subcadena, para realizar la delimitación necesita un separador como puede ser una coma ",".


Crearemos una ventana con la siguiente estructura, en el Text Input teclearemos varias palabras separadas con un guion.


En el evento del OnSelect del Button tecleamos:

 ClearCollect(Coleccion_split,

    Filter(TrimEnds(Split(TextInput_split.Text, "-")),!IsBlank(Value))
);


Donde indicamos que se creara una colección llamada Coleccion_split, llamara el contenido de TextInput_split, al utilizar TrimEnds, elimina los espacios en blanco al principio de cada elemento y con Filter(...,!IsBlank(Value)), filtra los elementos que no estén vacíos,


En el evento item de la galeria, llamamos la colección.


Insertamos una etiqueta en la galeria y en el evento Text llamamos el campo ThisItem.Value que se generó en la colección.


En el evento Text de la etiqueta tecleamos:  Last(FirstN(Coleccion_split, 2)).Value

Donde indicamos que se llamara la fila 2 de la colección.

Ejecutamos la app y presionamos el botón.

En la etiqueta se muestra la palabra Mac que indica la fila 2.
Al resto de las filas elimino el guion.

En caso de querer adicionar alguna columna a la colección lo podemo realizar a de la siguiente manera.
ClearCollect(Coleccion_split,
    Filter(TrimEnds(Split(TextInput_split.Text, "-")),!IsBlank(Value))
);
ClearCollect( Coleccion_split2,
   AddColumns(Coleccion_split, Valor, ThisRecord.Value, Id, "Equipo")
);


Llamamos la nueva colección en el evento item de la gelaria.

Agregamos una etiqueta más en la galeria y llamamos en el evento item ThisItem.Id.

En caso de querer crear un numero consecutivo, podemos realizar lo siguiente:
ClearCollect(
    Coleccion_split2,
    ForAll(
        Sequence(CountRows(Coleccion_split)),
        Patch(
            Last(FirstN(Coleccion_split, Value)),
            {Id: Value}
        )
    )
)

Agregamos Sequence() que realiza la secuencia de un valor, en este caso será la cantidad de registros de la colección Coleccion_split.
Con Patch() grabaremos en la columna Id el valor de la secuencia.




Publicar un comentario

Artículo Anterior Artículo Siguiente