Funkce EndsWith a StartsWith
Platí pro: aplikace na plátně toky na počítači Dataverse sloupce vzorců aplikace řízené modelem Power Pages Power Platform CLI
Testuje, jestli textovým řetězcem začíná nebo končí jiný textový řetězec.
Popis
Funkce EndsWith testuje, jestli jeden textový řetězec končí jiným textovým řetězcem.
Funkce StartsWith testuje, jestli jeden textový řetězec začíná jiným textovým řetězcem.
Testy u obou funkcí nerozlišují velká a malá písmena. Vrácenou hodnotou je logická hodnota true nebo false.
Funkce EndsWith a StartsWith můžete používat s funkcí Filter k vyhledání dat v aplikaci. Pomocí operátoru in nebo funkce Search můžete také vyhledávat kdekoli v textových řetězcích, nejenom na začátku nebo na konci. To, které funkce si zvolíte, bude záviset na potřebách aplikace a na tom, kterou funkci můžete pro konkrétní zdroj dat delegovat. Pokud některou z těchto funkcí delegovat nejde, zobrazí se při vytváření upozornění delegování, které vás na toto omezení upozorní.
Syntaxe
EndsWith( Text, EndText )
- Text – Povinné. Text, který chcete otestovat.
- EndText – Povinný. Text, který chcete vyhledat na konci řetězce Text. Pokud je KoncText prázdný řetězec, EndsWith vrátí hodnotu true.
StartsWith( Text, StartText )
- Text – Povinné. Text, který chcete otestovat.
- StartText – Povinný. Text, který chcete vyhledat na začátku řetězce Text. Pokud je PočText prázdný řetězec, StartsWith vrátí hodnotu true.
Příklady
Vzorec | Popis | Výsledek |
---|---|---|
EndsWith( "Ahoj svět", "svět" ) | Otestuje, jestli řetězec "Hello World" končí řetězcem "world". V testu se nerozlišují malá a velká písmena. | věrný |
EndsWith( "Sbohem", "dobře" ) | Otestuje, jestli řetězec "Good bye" končí řetězcem "good". Argument KoncText ("good") se sice v textu vyskytuje, ale není na jeho konci. | falešný |
EndsWith( "Vždy řekni ahoj", "ahoj" ) | Otestuje, jestli řetězec "Always say hello" končí řetězcem "hello". | věrný |
EndsWith( "Sbohem", "" ) | Otestuje, jestli řetězec "Bye bye" končí prázdným textovým řetězcem (Len vrátí 0). V tomto případě funkce EndsWith vrací hodnotu true a usnadňuje tak použití ve výrazech funkce Filter. | věrný |
Vzorec | Popis | Výsledek |
---|---|---|
StartsWith( "Ahoj svět", "ahoj" ) | Otestuje, jestli řetězec "Hello World" začíná řetězcem "hello". V testu se nerozlišují malá a velká písmena. | věrný |
StartsWith( "Sbohem", "ahoj" ) | Otestuje, jestli řetězec "Good bye" začíná řetězcem "hello". | falešný |
StartsWith( "Vždy řekni ahoj", "ahoj" ) | Otestuje, jestli řetězec "Always say hello" začíná řetězcem "hello". Řetězec "hello" se sice v textu vyskytuje, není ale na jeho začátku. | falešný |
StartsWith( "Sbohem", "" ) | Otestuje, jestli řetězec "Bye bye" začíná prázdným textovým řetězcem (Len vrátí 0). V tomto případě funkce StartsWith vrací hodnotu true a usnadňuje tak použití ve výrazech funkce Filter. | věrný |
Vyhledávání v uživatelském prostředí
V mnoha aplikacích můžete do vyhledávacího pole zadat jeden nebo více znaků a vyfiltrovat si tak z velké sady dat seznam záznamů. Při psaní seznam průběžně zobrazuje jenom záznamy, které odpovídají kritériím hledání.
Příklady ve zbývající části tohoto tématu zobrazují výsledky hledání v seznamu Customers, který obsahuje tato data:
Pokud chcete vytvořit tento zdroj dat jako kolekci, vytvořte ovládací prvek Button a jeho vlastnost OnSelect nastavte na tento vzorec:
ClearCollect( Zákazníci, Tabulka( { Jméno: "Fred Garcia", Společnost: "Northwind Traders" }, { Jméno: "Cole Miller", Společnost: "Contoso" }, { Jméno: "Glenda Johnson", Společnost: "Contoso" }, { Jméno: "Mike Collins ", Společnost: "Adventure Works" }, { Název: "Colleen Jones", Společnost: "Adventure Works" } ) )
Stejně jako v tomto příkladu můžete seznam záznamů zobrazit v ovládacím prvku Gallery dole na obrazovce. Do horní části obrazovky můžete přidat ovládací prvek Text input s názvem SearchInput, aby si uživatelé mohli zobrazit jenom záznamy, které je zajímají.
Při psaní znaků do pole SearchInput se výsledky v galerii automaticky filtrují. V tomto případě je galerie nakonfigurovaná tak, aby se zobrazovaly záznamy, u nichž jméno zákazníka (nikoli název společnosti) začíná sekvencí znaků zadanou do pole SearchInput. Pokud uživatel do vyhledávacího pole zadá co, galerie zobrazí tyto výsledky:
Pokud chcete filtrovat podle sloupce Name, nastavte vlastnost Items ovládacího prvku galerie na jeden z těchto vzorců:
Vzorec | Popis | Výsledek |
---|---|---|
Filtr( Zákazníci, StartsWith( Name, SearchInput.Text ) ) | Ze zdroje dat Customers vyfiltruje záznamy, ve kterých se hledaný řetězec ve sloupci Name vyskytuje na začátku. V testu se nerozlišují malá a velká písmena. Pokud uživatel do pole hledání zadá co, galerie zobrazí Colleen Jones a Cole Miller. Galerie nezobrazí řetězec Mike Collins, protože sloupec Name pro daný záznam nezačíná hledaným řetězcem. | |
Filtr (Zákazníci, SearchInput.Text in Name ) | Ze zdroje dat Customers vyfiltruje záznamy, v nichž se hledaný řetězec zobrazuje kdekoli ve sloupci Name. V testu se nerozlišují malá a velká písmena. Pokud uživatel do vyhledávacího pole zadá co, galerie zobrazí Colleen Jones,Cole Miller a Mike Collins, protože u všech těchto záznamů se hledaný řetězec nachází někde ve sloupci Name. | |
Hledat (Zákazníci, SearchInput.Text, "Name" ) | Podobně jako operátor in i funkce Search hledá pro každý záznam shodu kdekoli ve sloupci Name. Nezapomeňte, že název sloupce musíte uzavřít do dvojitých uvozovek. |
Hledání můžete rozšířit tak, aby se zahrnul sloupec Company i sloupec Name:
Vzorec | Popis | Výsledek |
---|---|---|
Filtr( Zákazníci, StartsWith( Name, SearchInput.Text ) || StartsWith( Company, SearchInput.Text ) ) | Ze zdroje dat Customers vyfiltruje záznamy, u kterých sloupec Name nebo sloupec Company začíná hledaným řetězcem (například co). Operátor || je true, pokud je true i některá z funkcí StartsWith. | |
Filtr( Zákazníci, SearchInput.Text in Name || SearchInput.Text in Company ) | Ze zdroje dat Customers vyfiltruje záznamy, u kterých se někde ve sloupci Name nebo Company vyskytuje hledaný řetězec (například co). | |
Hledat ( Zákazníci, SearchInput.Text, "Name", "Company" ) | Podobně jako u operátoru in i funkce Search vyhledá ve zdroji dat Customers záznamy, u kterých se někde se ve sloupci Name nebo Company vyskytuje hledaný řetězec (například co). V případě, že chcete zadat více sloupců a více operátorů in, funkce Search se oproti funkci Filter snadněji čte i píše. Nezapomeňte, že názvy sloupců musíte uzavřít do dvojitých uvozovek. |