Testar om en textsträng börjar med en annan textsträng.

Beskrivning

Funktionen StartsWith testar om en textsträng börjar med en annan. Testet är skiftlägesokänsligt. Returvärdet är ett booleskt värde, sant eller falskt.

Använd StartsWith med funktionen Filter för att söka efter data i din app. Du kan också använda operatorn i eller funktionen Sök för att titta var som helst inom textsträngar, inte bara i början. Ditt val av funktioner beror på dina behov för din app och vilken funktion som kan delegeras för en viss datakälla. Om någon av dessa funktioner inte kan delegeras, visas en blå punkt vid redigeringen för att varna dig för den här begränsningen.

Syntax

StartsWith( Text, StartText )

  • Text – Krävs. Texten som ska testas.
  • StartText – obligatoriskt. Texten som ska sökas efter i början av Text. Om StartText är en tom sträng, returnerar StartsWith sant.

Exempel

Formel Beskrivning Resultat
StartsWith ("Hello World", "Hello") Testar om "Hello World" börjar med "hello". Testet är skiftlägesokänsligt. true
StartsWith( "Good bye", "hello" ) Testar om "Good bye" börjar med "hello". false
StartsWith( "Always say hello", "hello" ) Testar om "Always say hello" börjar med "hello". Även om "hello" visas i texten, visas det inte i början. false

Användarupplevelsen för sökning

I många appar kan du skriva ett eller flera tecken i en sökruta för att filtrera en lista med poster i en stor datauppsättning. När du skriver visar listan endast de poster som matchar sökvillkoren.

Exemplen i resten av det här avsnittet visar resultaten av en sökning av en kundlista som innehåller dessa data:

Om du vill skapa den här datakällan som en samling skapar du först en Button-kontroll och ställer in dess egenskap OnSelect på följande formel:

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"}))

Precis som i det här exemplet kan du visa en lista med poster i en gallerikontroll längst ned på skärmen. Nära toppen på skärmen kan du lägga till en textinmatningskontroll som heter SearchInput så att användarna kan ange vilka poster som intresserar dem.

När användaren skriver tecken i SearchInput, filtreras resultaten i galleriet automatiskt. I det här fallet har galleriet konfigurerats för att visa poster där kundens namn (inte namnet på företaget) börjar med teckenföljden i SearchInput. Om användaren skriver co i sökrutan, visar galleriet följande resultat:

Om du vill filtrera efter kolumnen Name ställer du in gallerikontrollens egenskap Items på någon av följande formler:

Formel Beskrivning Resultat
Filter(Customers, StartsWith(Name, SearchInput.Text)) Filtrerar datakällan Customers efter poster där söksträngen visas i början av Name-kolumnen. Testet är skiftlägesokänsligt. Om användaren skriver co i sökrutan, visar galleriet Colleen Jones och Cole Miller. Galleriet visar inte Mike Collins eftersom Name-kolumnen för den posten inte börjar med söksträngen.
Filter(Customers, SearchInput.Text in Name) Filtrerar datakällan Customers för poster där söksträngen visas någonstans i kolumnen Name. Testet är skiftlägesokänsligt. Om användaren skriver co i sökrutan, visar galleriet Colleen Jones Cole Miller och Mike Collins eftersom söksträngen finns någonstans i kolumnen Name för alla dessa poster.
Search(Customers, SearchInput.Text, "Name") Ungefär som att använda operatorn in, så söker funktionen Search efter en matchning var som helst inom kolumnen Name för varje post. Observera att du måste skriva kolumnnamnet med dubbla citattecken.

Du kan utöka din sökning att inkludera Company-kolumnen utöver Name-kolumnen:

Formel Beskrivning Resultat
Filter(Customers, StartsWith(Name, SearchInput.Text) || StartsWith(Company, SearchInput.Text)) Filtrerar datakällan Customers för poster där antingen Name-kolumnen eller Company-kolumnen börjar med söksträngen (t.ex. co). Operatorn || är true om någon av StartsWith-funktionerna är true.
Filter(Customers, SearchInput.Text in Name || SearchInput.Text in Company) Filtrerar datakällan Customers för poster där antingen Name-kolumnen eller Company-kolumnen innehåller söksträngen (t.ex. co) var som helst inom sig.
Search(Customers, SearchInput.Text, "Name", "Company") Ungefär som att använda in-operatorn så söker Search-funktionen igenom datakällan Customers för poster där antingen Name-kolumnen eller Company-kolumnen innehåller söksträngen (t.ex. co) var som helst inom sig. Search-funktionen är lättare att läsa och skriva än Filter om du vill ange flera kolumner och flera in-operatorer. Observera att du måste skriva kolumnnamnen med dubbla citattecken.