Funcions Concat i Concatenate al Power Apps

Concatena cadenes individuals de text i de cadenes en taules.

Descripció

La funció Concatenate concatena una combinació de cadenes individuals i una taula de cadenes d'una sola columna. Quan s'utilitza aquesta funció amb cadenes individuals, és equivalent a l'ús de l'operador &.

La funció Concat concatenarà el resultat d'una fórmula aplicada en tots els registres d'una taula, resultant-ne una única cadena. Utilitzeu aquesta funció per resumir les cadenes d'una taula, igual que la funció Sum per als números.

Els camps del registre que s’està processant actualment estan disponibles dins de la fórmula. Utilitzeu l’operador ThisRecord o simplement els camps de referència per nom com si fos qualsevol altre valor. L’operador As també es pot utilitzar per nomenar el registre que s’està processant i que pot ajudar-vos a fer que la fórmula sigui més fàcil d’entendre i fer accessible els registres incrustats. Per obtenir més informació, vegeu els exemples següents i la secció Treballar amb l’àmbit de registre.

Utilitzeu la funció Split o MatchAll per dividir una cadena en una taula de subcadenes.

Sintaxi

Concat( Taula, Fórmula, separador)

  • Taula: obligatori. Taula on es treballarà.
  • Fórmula: obligatori. Fórmula que s'aplicarà a tots els registres de la taula.
  • Separador: opcional. Valor de text que s'inserirà entre les files concatenades de la taula.

Concatenate( String1 [, String2, ...] )

  • Cadena: obligatori. Combinació de cadenes individuals o d'una taula de cadenes d'una sola columna.

Exemples

Els exemples d'aquesta secció fan servir aquestes variables globals:

  • FirstName = "Jane"
  • LastName = "Doe"
  • Productes = Taula amb dues columnes i quatre files

Per crear aquestes variables globals en una aplicació, inseriu un control Botó i definiu-ne la propietat OnSelect en aquesta fórmula:

Set( FirstName, "Jane" ); Set( LastName, "Doe" );
Set( Products,
    Table(
        { Name: "Violin", Type: "String" },
        { Name: "Cello", Type: "String" },
        { Name: "Trumpet", Type: "Wind" }
    )
)

Seleccioneu el botó (fent-hi clic mentre manteniu premuda la tecla Alt).

Funció Concatenate i l'operador &

Per a aquests exemples, definiu la propietat Text d'un control Etiqueta a una fórmula des de la primera columna de la taula següent.

Fórmula Descripció Resultat
Concatenate( LastName, ", ", FirstName ) Concatena el valor a LastName, la cadena ", " (una coma seguida d'un espai) i el valor a FirstName. "Doe, Jane"
LastName & ", " & FirstName Igual que l'exemple anterior, tret de l'ús de l'operador & en lloc de la funció. "Doe, Jane"
Concatenate( FirstName, " ", LastName ) Concatena el valor a FirstName, la cadena " " (un espai) i el valor a LastName. "Jane Doe"
FirstName & " " & LastName Igual que l'exemple anterior, amb l'operador & en lloc de la funció. "Jane Doe"

Concatenar amb una taula d'una sola columna

En aquest exemple, afegiu un control en blanc Galeria vertical, definiu la propietat Items a la fórmula a la taula següent i, a continuació, afegiu una etiqueta a la plantilla de galeria.

Fórmula Descripció Resultat
Concatenate( "Nom: ", Products.Nom, ", Tipus: ", Products.Tipus ) Per a cada registre de la taula Productes, concatena la cadena "Nom:", el nom del producte, la cadena ", Tipus:" i el tipus de producte. Taula de productes

Funció Concat

Per a aquests exemples, definiu la propietat Text d'una etiqueta a una fórmula des de la primera columna de la taula següent.

Fórmula Descripció Resultat
Concat( Productes, Nom & ", " ) Avalua l'expressió Nom & "," per a cada registre de Productes i concatena els resultats en una cadena de text única. "Violí, Violoncel, Trompeta, "
Concat( Filter( Productes, Tipus = "Corda" ), Nom & ", " ) Avalua la fórmula Nom & "," per a cada registre de Productes que satisfà el filtre Tipus = "Corda" i concatena els resultats en una cadena de text única. "Violí, Violoncel, "

Retallar el final

Els dos últims exemples inclouen una "," extra al final del resultat. La funció annexa una coma i un espai al valor Nom de cada registre de la taula, incloent-hi l'últim registre.

En alguns casos, aquests caràcters addicionals no importen. Per exemple, un separador d'espai únic no apareix si es mostra el resultat en una etiqueta. Si voleu eliminar aquests caràcters addicionals, utilitzeu la funció Left o Match.

Per a aquests exemples, definiu la propietat Text d'una etiqueta a una fórmula des de la primera columna de la taula següent.

Fórmula Descripció Resultat
Left( Concat( Productes, Nom & ", " ), Len( Concat( Productes, Nom & ", " ) ) - 2 ) Torna el resultat de Concat però suprimeix els dos últims caràcters, que formen el separador estrany. "Violí, Violoncel, Trompeta"
Match( Concat( Productes, Nom & ", " ), "^(?<trim>.*), $" ).trim Retorna els caràcters de Concat des de l'inici de la cadena de text (^) al final ($) però no inclou la coma i l'espai no desitjats al final. "Violí, Violoncel, Trompeta"

Split i MatchAll

Si heu utilitzat Concat amb un separador, podeu invertir l'operació combinant les funcions Split i MatchAll.

Per a aquests exemples, afegiu una galeria vertical en blanc, definiu la propietat Items a una fórmula a la taula següent i, a continuació, afegiu una etiqueta a la plantilla de galeria.

Fórmula Descripció Resultat
Split( Concat( Productes, Nom & ", " ), ", " ) Divideix la cadena de text amb el separador ", ". La cadena acaba amb una coma i un espai, de manera que l'última fila del resultat és una cadena buida. Taula amb l'última fila buida
MatchAll( Concat( Productes, Nom & ", " ), "[^\s,]+" ).FullMatch Divideix la cadena de text segons caràcters que no són espais o comes. Aquesta fórmula suprimeix la coma addicional i l'espai al final de la cadena. Taula amb només 3 files