Funkce Concat a Concatenate v Power Apps

Zřetězí jednotlivé řetězce textu a řetězce v tabulce.

Popis

Funkce Concatenate zřetězí kombinaci jednotlivých řetězců a jednosloupcovou tabulku řetězců. Když tuto funkci použijete s jednotlivými řetězci, odpovídá použití operátoru &.

Funkce Concat zřetězí výsledek vzorce použitého na všechny záznamy tabulky a vznikne jeden řetězec. Tato funkce slouží ke shrnutí řetězců tabulky, stejně jako to dělá funkce Sum s čísly.

[!INCLUDE [record-scope]../../includes/record-scope.md)]

Pomocí funkce Split nebo MatchAll můžete rozdělit řetězec do tabulky podřetězců.

Syntaxe

Concat (Tabulka, Vzorec, Oddělovač)

  • Tabulka – povinné. Tabulka, se kterou se má provést výpočet
  • Vzorec – povinné. Vzorec, který se má použít na záznamy tabulky.
  • Oddělovač – volitelné. Textová hodnota, která má být vložena mezi zřetězené řádky tabulky.

Concatenate( Řetězec1 [; Řetězec2;...])

  • Řetězce – povinné. Kombinace jednotlivých řetězců nebo jednosloupcová tabulka řetězců.

Příklady

Příklady v této části používají tyto globální proměnné:

  • FirstName = "Jana"
  • LastName = "Nováková"
  • Produkty = Tabulka se dvěma sloupci a čtyřmi řádky.

Chcete-li vytvořit tyto globální proměnné v aplikaci, vložte ovládací prvek Button a nastavte jeho vlastnost OnSelect podle tohoto vzorce:

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

Vyberte tlačítko (kliknutím na něj, zatímco držíte klávesu Alt).

Funkce Concatenate a operátor &

Pro tyto příklady nastavte vlastnost Text ovládacího prvku Label na vzorec z prvního sloupce další tabulky.

Vzorec Popis Výsledek
Concatenate( LastName, ", ", FirstName ) Zřetězí hodnotu LastName, řetězec ", " (čárka následovaná mezerou) a hodnota FirstName. "Nováková, Jana"
LastName & ", " & FirstName Stejně jako v předchozím příkladu s výjimkou použití operátoru & místo funkce. "Nováková, Jana"
Concatenate( FirstName, " ", LastName ) Zřetězí hodnotu FirstName, řetězec ", " (jedna mezera) a hodnota LastName. "Jana Nováková"
FirstName & " " & LastName Stejně jako v předchozím příkladu s použitím operátoru & místo funkce. "Jana Nováková"

Zřetězení pomocí tabulky s jedním sloupcem

V tomto příkladu přidejte prázdný svislý ovládací prvek Gallery, nastavit jeho vlastnost Items na vzorec v následující tabulce a poté přidejte popisek do šablony galerie.

Vzorec Popis Výsledek
Concatenate( "Název: ", Produkty.Název, ", Typ: ", Produkty.Typ ) Pro každý záznam v tabulce Produkty zřetězí řetězec "Název: ", název produktu, řetězec "Typ: " a typ produktu. Tabulka produktů.

Funkce Concat

Pro tyto příklady nastavte vlastnost Text popisku na vzorec z prvního sloupce další tabulky.

Vzorec Popis Výsledek
Concat (Produkty, Název & ", " ) Vyhodnotí výraz Název & ", " pro každý záznam Produkty a zřetězí výsledky do jediného textového řetězce. "Housle, Cello, Trubka, "
Concat( Filter( Produkty, Typ = ""Řetězec" ), Název & ", " ) Vyhodnocuje vzorec Název & ", " pro každý záznam Produkty, který vyhovuje filtru Typ = "Řetězec" a zřetězí výsledky do jediného textového řetězce. "Housle, Cello, "

Oříznutí na konci

Poslední dva příklady zahrnují na konci výsledku „ “. Funkce připojí čárku a mezeru k hodnotě Název každého záznamu v tabulce, včetně posledního záznamu.

V některých případech na těchto dalších znacích nezáleží. Například jednoznakový oddělovač se nezobrazí, pokud výsledek zobrazíte v popisku. Pokud chcete tyto další znaky odstranit, použijte funkci Left nebo Match.

Pro tyto příklady nastavte vlastnost Text popisku na vzorec z prvního sloupce další tabulky.

Vzorec Popis Výsledek
Left( Concat( Produkty, Název & ", " ), Len( Concat( Produkty, Název & ", " ) ) - 2 ) Vrátí výsledek Concat, ale odstraní poslední dva znaky, které tvoří nadbytečné oddělovače. "Housle, Cello, Trubka"
Match( Concat( Produkty, Název & ", " ), "^(?<trim>.*), $" ).trim Vrací znaky funkce Concat od začátku textového řetězce (^) do konce ($), ale nezahrnuje nežádoucí čárku a mezeru na konci. "Housle, Cello, Trubka"

Split a MatchAll

Pokud jste použili funkci Concat s oddělovačem, můžete operaci obrátit kombinací funkcí Split a MatchAll.

V těchto příkladech přidejte prázdný svislý ovládací prvek Galerie, nastavit jeho vlastnost Items na vzorec v následující tabulce a poté přidejte popisek do šablony galerie.

Vzorec Popis Výsledek
Split( Concat( Produkty, Název & ", " ), ", " ) Rozdělí textový řetězec oddělovačem ", ". Řetězec končí čárkou a mezerou, takže poslední řádek ve výsledku je prázdný řetězec. Tabulka s prázdným posledním řádkem.
MatchAll( Concat( Produkty, Název & ", " ), "[^\s,]+" ).FullMatch Rozdělí textový řetězec podle znaků, které nejsou mezerami nebo čárkami. Tento vzorec odstraní zvláštní čárku a mezeru na konci řetězce. Tabulka pouze se 3 řádky.

Poznámka

Můžete nám sdělit, jaké máte jazykové preference pro dokumentaci? Zúčastněte se krátkého průzkumu. (upozorňujeme, že tento průzkum je v angličtině)

Průzkum bude trvat asi sedm minut. Nejsou shromažďovány žádné osobní údaje (prohlášení o zásadách ochrany osobních údajů).