Funzioni EndsWith e StartsWith in PowerAppsEndsWith and StartsWith functions in PowerApps

Verifica se una stringa di testo inizia o termina con un'altra stringa di testo.Tests whether a text string begins or ends another text string.

DescrizioneDescription

La funzione EndsWith verifica se una stringa di testo termina con un'altra.The EndsWith function tests whether one text string ends with another.

La funzione StartsWith verifica se una stringa di testo inizia con un'altra.The StartsWith function tests whether one text string begins with another.

Per entrambe le funzioni, i test non rispettano la distinzione tra maiuscole e minuscole.For both functions, the tests are case insensitive. Il valore restituito di entrambe le funzioni è un valore booleano true o false.The return value of both is a Boolean true or false.

Usare EndsWith e StartsWith con la funzione Filter per cercare i dati nell'app.Use EndsWith and StartsWith with the Filter function to search the data within your app. È anche possibile usare l'operatore in o la funzione Search per cercare in qualsiasi punto delle stringhe di testo, non solo all'inizio o alla fine.You can also use the in operator or the Search function to look anywhere within text strings, not just at the beginning or end. La scelta delle funzioni dipenderà dalle esigenze dell'app e dalla funzione che può essere delegata per un'origine dati specifica.Your choice of functions will depend on the needs of your app and which function can be delegated for your particular data source. Se una di queste funzioni non può essere delegata, in fase di creazione verrà visualizzato un avviso di delega per avvisare di questa limitazione.If one of these functions can't be delegated, a delegation warning will appear at authoring time to warn you of this limitation.

SintassiSyntax

EndsWith(Text; EndText)EndsWith( Text; EndText )

  • Text: obbligatorio.Text – Required. Testo da testare.The text to test.
  • EndText: obbligatorio.EndText – Required. Testo da cercare alla fine di Text.The text to search for at the end of Text. Se EndText è una stringa vuota, EndsWith restituisce true.If EndText is an empty string, EndsWith returns true.

StartsWith( Text; StartText )StartsWith( Text; StartText )

  • Text: obbligatorio.Text – Required. Testo da testare.The text to test.
  • StartText: obbligatorio.StartText – Required. Testo da cercare all'inizio di Text.The text to search for at the beginning of Text. Se StartText è una stringa vuota, StartsWith restituisce true.If StartText is an empty string, StartsWith returns true.

EsempiExamples

FormulaFormula DescrizioneDescription RisultatoResult
EndsWith("Hello World"; "world")EndsWith( "Hello World"; "world" ) Verifica se "Hello World" termina con "world" .Tests whether "Hello World" ends with "world". Il test non fa distinzione tra lettere maiuscole e minuscole.The test is case insensitive. truetrue
EndsWith("Good bye"; "good")EndsWith( "Good bye"; "good" ) Verifica se "Good bye" termina con "good" .Tests whether "Good bye" ends with "good". L'argomento EndText ( "good" ) viene visualizzato nel testo, ma non alla fine.The EndText argument ("good") appears in the text but not at the end. falsefalse
EndsWith("Always say hello"; "hello")EndsWith( "Always say hello"; "hello" ) Verifica se "Always say hello" termina con "hello" .Tests whether "Always say hello" ends with "hello". truetrue
EndsWith ("Bye Bye", "")EndsWith( "Bye bye"; "" ) Verifica se "Bye bye" termina con una stringa vuota (Len restituisce 0).Tests whether "Bye bye" ends with an empty text string (Len returns 0). Per semplificarne l'uso nelle espressioni Filter, la funzione EndsWith è stata definita in modo da restituire true in questo caso.Easing its use in Filter expressions, EndsWith is defined to return true in this case. truetrue
FormulaFormula DescrizioneDescription RisultatoResult
StartsWith( "Hello World"; "hello" )StartsWith( "Hello World"; "hello" ) Verifica se "Hello World" inizia con "hello" .Tests whether "Hello World" begins with "hello". Il test non fa distinzione tra maiuscole e minuscole.The test is case insensitive. truetrue
StartsWith( "Good bye"; "hello" )StartsWith( "Good bye"; "hello" ) Verifica se "Good bye" inizia con "hello" .Tests whether "Good bye" begins with "hello". falsefalse
StartsWith( "Always say hello"; "hello" )StartsWith( "Always say hello"; "hello" ) Verifica se "Always say hello" inizia con "hello" .Tests whether "Always say hello" begins with "hello". "hello" è visualizzato nel testo, ma non all'inizio.Although "hello" appears in the text, it doesn't appear at the beginning. falsefalse
StartsWith("Bye bye"; "")StartsWith( "Bye bye"; "" ) Verifica se "Bye bye" inizia con una stringa di testo vuota (Len restituisce 0).Tests whether "Bye bye" starts with an empty text string (Len returns 0). Per semplificarne l'uso nelle espressioni Filter, la funzione StartsWith è stata definita in modo da restituire true in questo caso.Easing its use in Filter expressions, StartsWith is defined to return true in this case. truetrue

Esperienza utente di ricercaSearch user experience

In molte app è possibile digitare uno o più caratteri in una casella di ricerca per filtrare un elenco di record in un set di dati molto grande.In many apps, you can type one or more characters into a search box to filter a list of records in a large data set. Mentre si digita, l'elenco visualizza solo i record che soddisfano i criteri di ricerca.As you type, the list shows only those records that match the search criteria.

Gli esempi nella parte rimanente di questo argomento mostrano i risultati di ricerca in un elenco Customers che contiene i dati seguenti:The examples in the rest of this topic show the results of searching a Customers list that contains this data:

Per creare questa origine dati come raccolta, creare un controllo Button e impostarne la proprietà OnSelect su questa formula:To create this data source as a collection, create a Button control and set its OnSelect property to this formula:

ClearCollect (Customers; tabella ({nome: "Fred Garcia"; azienda: "Northwind Traders"}; {nome: "Cole Miller"; azienda: "Contoso"}; {nome: "Glenda Johnson"; società: "Contoso"}; {nome: "Mike Collins"; azienda: "Adventure Works"}; {nome: "Colleen Jones"; azienda: "Adventure Works"})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" } ) )

Come illustrato in questo esempio, è possibile visualizzare un elenco di record in un controllo di raccolta nella parte inferiore della schermata.As in this example, you can show a list of records in a Gallery control at the bottom of a screen. Nella parte superiore della schermata è possibile aggiungere un controllo di input di testo denominato SearchInput, in modo che gli utenti possono specificare i record a cui sono interessati.Near the top of the screen, you can add a Text input control, named SearchInput, so that users can specify which records interest them.

Mentre l'utente digita caratteri in SearchInput, i risultati della raccolta vengono filtrati automaticamente.As the user types characters in SearchInput, the results in the gallery are automatically filtered. In questo caso, la raccolta è configurata per visualizzare i record per cui il nome del cliente (non il nome della società) inizia con la sequenza di caratteri in SearchInput. Se l'utente digita co nella casella di ricerca, la raccolta visualizza questi risultati:In this case, the gallery is configured to show records for which the name of the customer (not the name of the company) starts with the sequence of characters in SearchInput.If the user types co in the search box, the gallery shows these results:

Per applicare un filtro basato sulla colonna Name, impostare la proprietà Items del controllo della raccolta su una di queste formule:To filter based on the Name column, set the Items property of the gallery control to one of these formulas:

FormulaFormula DescrizioneDescription RisultatoResult
Filter( Customers; StartsWith( Name; SearchInput.Text ) )Filter( Customers; StartsWith( Name; SearchInput.Text ) ) Applica un filtro all'origine dati Customers per i record in cui viene visualizzata la stringa di ricerca all'inizio della colonna Name.Filters the Customers data source for records in which the search string appears at the start of the Name column. Il test non fa distinzione tra lettere maiuscole e minuscole.The test is case insensitive. Se l'utente digita co nella casella di ricerca, la raccolta visualizza Colleen Jones e Cole Miller.If the user types co in the search box, the gallery shows Colleen Jones and Cole Miller. La raccolta non visualizza Mike Collins perché la colonna Name per tale record non inizia con la stringa di ricerca.The gallery doesn't show Mike Collins because the Name column for that record doesn't start with the search string.
Filter( Customers; SearchInput.Text in Name )Filter( Customers; SearchInput.Text in Name ) Applica un filtro all'origine dati Customers per i record in cui viene visualizzata la stringa di ricerca in qualsiasi parte della colonna Name.Filters the Customers data source for records in which the search string appears anywhere in the Name column. Il test non fa distinzione tra lettere maiuscole e minuscole.The test is case insensitive. Se l'utente digita co nella casella di ricerca, la raccolta visualizza Colleen Jones, Cole Miller, e Mike Collins perché la stringa di ricerca è inclusa in qualche parte della colonna Name per tutti questi record.If the user types co in the search box, the gallery shows Colleen Jones, Cole Miller, and Mike Collins because the search string appears somewhere in the Name column of all of those records.
Search( Customers; SearchInput.Text; "Name" )Search( Customers; SearchInput.Text; "Name" ) Simile all'uso dell'operatore in, la funzione Search cerca una corrispondenza in una parte qualsiasi all'interno della colonna Name di ogni record.Similar to using the in operator, the Search function searches for a match anywhere within the Name column of each record. Si noti che è necessario racchiudere il nome della colonna tra virgolette doppie.Note that you must enclose the column name in double quotation marks.

È possibile espandere la ricerca per includere la colonna Company e la colonna Name:You can expand your search to include the Company column as well as the Name column:

FormulaFormula DescrizioneDescription RisultatoResult
Filter( Customers; StartsWith( Name; SearchInput.Text ) |;|; StartsWith( Company; SearchInput.Text ) )Filter( Customers; StartsWith( Name; SearchInput.Text ) |;|; StartsWith( Company; SearchInput.Text ) ) Applica un filtro all'origine dati Customers per i record in cui la colonna Name o la colonna Company inizia con la stringa di ricerca (ad esempio, co).Filters the Customers data source for records in which either the Name column or the Company column starts with the search string (for example, co). L'operatore || è true se la funzione StartsWith è anche true.The || operator is true if either StartsWith function is true.
Filter( Customers; SearchInput.Text in Name |;|; SearchInput.Text in Company )Filter( Customers; SearchInput.Text in Name |;|; SearchInput.Text in Company ) Applica un filtro all'origine dati Customers per i record in cui la colonna Name o la colonna Company contiene la stringa di ricerca (ad esempio, co) in qualsiasi parte all'interno della colonna.Filters the Customers data source for records in which either the Name column or the Company column contains the search string (for example, co) anywhere within it.
Search( Customers; SearchInput.Text; "Name"; "Company" )Search( Customers; SearchInput.Text; "Name"; "Company" ) Analogamente all'uso dell'operatore in, la funzione Search esegue la ricerca nell'origine dati Customers per trovare record in cui la colonna Name o la colonna Company contiene la stringa di ricerca (ad esempio, co) in qualsiasi parte all'interno della colonna.Similar to using the in operator, the Search function searches the Customers data source for records in which either the Name column or the Company column contains the search string (for example, co) anywhere within it. La funzione Search è più semplice da leggere e scrivere della funzione Filter se si vogliono specificare più colonne e più operatori in.The Search function is easier to read and write than Filter if you want to specify multiple columns and multiple in operators. Si noti che è necessario racchiudere i nomi delle colonne tra virgolette doppie.Note that you must enclose the names of the columns in double quotation marks.