Véget ér: és elindul"Függvényekkel
A következőkre vonatkozik: Vászonalapú alkalmazások Asztali folyamatok képletoszlopai Dataverse Modellvezérelt alkalmazások Power Platform CLI
Teszteli, hogy egy szöveges sztring egy másik szöveges sztring eleje vagy vége-e.
Ismertetés
Az EndsWith függvény azt teszteli, hogy egy szöveges sztring egy másikkal végződik-e.
A StartsWith függvény azt teszteli, hogy egy szöveges sztring egy másikkal kezdődik-e.
Mindkét függvényre igaz, hogy a teszt nem különbözteti meg a kis- és nagybetűket. Mindkét esetben a visszaadott érték egy logikai típusú igaz vagy hamis.
Az EndsWith és a StartsWith esetében a Filter függvénnyel lehet megkeresni a megfelelő adatokat az alkalmazásban. Az in operátor vagy a Search függvény használatával bárhol lehet keresni a szöveges sztringben, nem csak az elején vagy a végén. A megfelelő függvény kiválasztása függ az alkalmazás igényeitől, illetve attól, hogy melyik függvény delegálható az adott adatforráshoz. Ha valamelyik függvény nem delegálható, erre a korlátozásra a szerkesztéskor megjelenő delegálási figyelmeztetés hívja fel a figyelmet.
Szintaxis
EndsWith( Szöveg, Szövegvég )
- Szöveg – Kötelező. A tesztelendő szöveg.
- Szövegvég – Kötelező. A Szöveg végén keresendő szöveg. Ha a Szövegvég üres sztring, az EndsWithigaz értéket ad vissza.
StartsWith( Szöveg, Szövegkezdet )
- Szöveg – Kötelező. A tesztelendő szöveg.
- Szövegkezdet – Kötelező. A Szöveg elején keresendő szöveg. Ha a Szövegkezdet üres sztring, a StartsWithigaz értéket ad vissza.
Példák
Képlet | Ismertetés | Eredmény |
---|---|---|
EndsWith( "Hello World", "world" ) | Azt vizsgálja, hogy a „Hello World” a „world” szóra végződik-e. A teszt nem különbözteti meg a kis- és nagybetűket. | true |
EndsWith( "Good bye", "good" ) | Azt vizsgálja, hogy a „Good bye” a „good” szóval végződik-e. A Szövegvég argumentum („good”) megjelenik ugyan a szövegben, de nem a végén. | false |
EndsWith( "Always say hello", "hello" ) | Azt vizsgálja, hogy az „Always say hello” a „hello” szóra végződik-e. | true |
EndsWith( "Bye bye", "" ) | Azt vizsgálja, hogy a „Bye bye” üres szöveges sztringre végződik-e (a Len visszaadott értéke 0). Szűrési kifejezésekkel egyszerűsített használatakor az EndsWith visszaadott értéke ebben az esetben igaz. | true |
Képlet | Ismertetés | Eredmény |
---|---|---|
StartsWith( "Hello World", "hello" ) | Azt vizsgálja, hogy a „Hello World” a „hello” szóval kezdődik-e. A teszt nem különbözteti meg a kis- és nagybetűket. | true |
StartsWith( "Good bye", "hello" ) | Azt vizsgálja, hogy a „Good bye” a „hello” szóval kezdődik-e. | false |
StartsWith( "Always say hello", "hello" ) | Azt vizsgálja, hogy „Always say hello” a „hello” szóval kezdődik-e. Bár a „hello” szerepel a szövegben, nem az elején jelenik meg. | false |
StartsWith( "Bye bye", "" ) | Azt vizsgálja, hogy a „Bye bye” üres szöveges sztringgel kezdődik-e (a Len visszaadott értéke 0). Szűrési kifejezésekkel egyszerűsített használatakor a StartsWith visszaadott értéke ebben az esetben igaz. | true |
Keresési felhasználói élmény
Sok alkalmazásban ha karaktereket ír be a keresőmezőbe, azzal szűrni tudja a nagy adatkészletek rekordjainak listáját. A karakterek begépelésével a lista egyre rövidebb lesz, és csak azok a rekordok jelennek meg, amelyek megfelelnek a keresési feltételnek.
A témakör további részében található példák egy Customers (Ügyfelek) nevű lista keresési eredményét mutatják, amely a következő adatokat tartalmazza:
Ha ezt az adatforrást szeretné létrehozni gyűjteményként, akkor hozzon létre egy Gomb vezérlőelemet, és az OnSelect tulajdonság értékeként adja meg a következő képletet:
ClearCollect( Customers, Table( { Name: "Fred Garcia", Company: "Northwind Traders" }, { Name: "Cole Miller", Company: "Contoso" }, { Name: "Glenda Johnson", Company: "Contoso" }, { Name: "Mike Collins", Company: "Adventure Works" }, { Name: "Colleen Jones", Company: "Adventure Works" } ) )
Ahogy a példában is látható, megjeleníthet egy rekordlistát egy Katalógus vezérlőelemben a képernyő alján. A képernyő tetején felvehet egy Szövegbevitel vezérlőelemet, SearchInput (Keresés bemenete) névvel, így a felhasználók megadhatják, hogy milyen rekordok érdeklik őket.
Ahogy a felhasználó karaktereket gépel a SearchInput mezőbe, a rendszer automatikusan szűri a katalógus eredményeit. Ebben az esetben a katalógus arra van konfigurálva, hogy megjelenítse azon rekordokat, ahol a felhasználó neve (nem a vállalat neve) a SearchInput mezőben megadott karakterlánccal kezdődik. Ha a felhasználó begépeli a co karaktereket a keresőmezőbe, a katalógus a következő eredményeket jeleníti meg:
A Name (Név) oszlop alapján történő szűréshez a katalógus vezérlőelem Elemek tulajdonságának értékeként adja meg a következő képletek valamelyikét:
Képlet | Ismertetés | Eredmény |
---|---|---|
Filter( Customers, StartsWith( Name, SearchInput.Text ) ) | Kiszűri a Customers (Ügyfelek) adatforrásból azon rekordokat, ahol a keresési sztring szerepel a Name (Név) oszlop elején. A teszt nem különbözteti meg a kis- és nagybetűket. Ha a felhasználó begépeli a co karaktereket a keresőmezőbe, a katalógusban megjelenik Colleen Jones és Cole Miller. Mike Collins nem jelenik meg a katalógusban, mivel a rekord Name (Név) oszlopának nem az elején szerepel a keresési sztring. | |
Filter( Customers, SearchInput.Text in Name ) | Kiszűri a Customers (Ügyfelek) adatforrásból azon rekordokat, ahol a keresési sztring a Name (Név) oszlopban bárhol szerepel. A teszt nem különbözteti meg a kis- és nagybetűket. Ha a felhasználó begépeli a co karaktereket a keresőmezőbe, a katalógusban megjelenik Colleen Jones,Cole Miller és Mike Collins is, mivel a keresési sztring mindegyik rekord esetében szerepel valahol a Name (Név) oszlopban. | |
Search( Customers, SearchInput.Text, "Name" ) | Az in operátor működéséhez hasonlóan a Search függvény az egyes rekordok Name (Név) mezőin belül bárhol keresi az egyezéseket. Vegye figyelembe, hogy az oszlop nevét dupla idézőjelbe ("") kell tenni. |
Kiterjesztheti a keresést úgy, hogy a Company (Vállalat) és a Name (Név) oszlopban is keressen:
Képlet | Ismertetés | Eredmény |
---|---|---|
Filter( Customers, StartsWith( Name, SearchInput.Text ) || StartsWith( Company, SearchInput.Text ) ) | Kiszűri a Customers (Ügyfelek) adatforrásból azon rekordokat, ahol a keresési sztring (például co) szerepel akár a Name (Név), akár a Company (Vállalat) oszlop elején. Az || operátor akkor true, ha bármelyik StartsWith függvény true. | |
Filter( Customers, SearchInput.Text in Name || SearchInput.Text in Company ) | Kiszűri a Customers (Ügyfelek) adatforrásból azon rekordokat, ahol a keresési sztring (például co) bárhol szerepel akár a Name (Név), akár a Company (Vállalat) oszlopban. | |
Search( Customers, SearchInput.Text, "Name", "Company" ) | Az in operátor működéséhez hasonlóan a Search függvény kiszűri a Customers (Ügyfelek) adatforrásból azon rekordokat, ahol a keresési sztring (például co) bárhol szerepel akár a Name (Név), akár a Company (Vállalat) oszlopban. A Search függvényt könnyebb olvasni és megírni, mint a Filter függvényt, ha több oszlopot és több in operátort szeretnénk megadni. Vegye figyelembe, hogy az oszlopok neveit dupla idézőjelbe ("") kell tenni. |