Funções EndsWith e StartsWith
Aplica-se a: Aplicativos Canvas Fluxos de desktop Dataverse Colunas de fórmula Aplicativos baseados em modelo Power Pages Power Platform CLI
Testa se uma cadeia de texto começa ou termina outra cadeia de texto.
Descrição
A função EndsWith testa se uma cadeia de texto começa com outra.
A função StartsWith testa se uma cadeia de texto começa com outra cadeia de texto.
Para ambas as funções, os testes não diferenciam maiúsculas de minúsculas. O valor retornado é um booliano true ou false.
Use EndsWith e StartsWith com a função Filter para pesquisar os dados no aplicativo. Use também o operador in ou a função Search para pesquisar em qualquer lugar das cadeias de texto, não apenas no início ou no final. Sua escolha de funções dependerá das necessidades de seu aplicativo e de qual função pode ser delegada para sua fonte de dados específica. Se uma dessas funções não puder ser delegada, um aviso sobre a delegação será exibido no momento da criação para avisá-lo dessa limitação.
Sintaxe
TerminaCom( Texto, EndText )
- Texto – Obrigatório. O texto a ser testado.
- EndText – Obrigatório. O texto a ser pesquisado no início de Text. Se EndText for uma cadeia de caracteres vazia, EndsWith retornará true.
ComeçaCom( Texto, TextoInicial )
- Texto – Obrigatório. O texto a ser testado.
- StartText – Obrigatório. O texto a ser pesquisado no início do Texto. Se TextoInicial for uma cadeia de caracteres vazia, StartsWith retornará true.
Exemplos
Fórmula | Descrição | Resultado |
---|---|---|
TerminaCom("Olá Mundo", "mundo") | Testa se "Hello World" termina com "world". O teste diferencia maiúsculas de minúsculas. | verdadeiro |
TerminaCom( "Adeus", "bom" ) | Testa se "Good bye" termina com "good". O argumento EndText ("good") aparece no texto, mas não no final. | falso |
EndsWith( "Sempre diga olá", "olá") | Testa se "Always say hello" termina com "hello". | verdadeiro |
TerminaCom( "Tchau tchau", "" ) | Testa se "Bye bye" termina com uma cadeia de texto vazia (Len retorna 0). Facilitando seu uso em expressões Filter, EndsWith é definido para retornar true nesse caso. | verdadeiro |
Fórmula | Descrição | Resultado |
---|---|---|
ComeçaCom("Olá Mundo", "olá") | Testa se "Olá Mundo" começa com "olá". O teste diferencia maiúsculas de minúsculas. | verdadeiro |
ComeçaCom( "Adeus", "Olá") | Testa se "Até logo" começa com "logo". | falso |
StartsWith( "Sempre diga olá", "olá") | Testa se "Sempre diga olá" começa com "olá". Embora "olá" apareça no texto, ele não aparece no início. | falso |
ComeçaCom("Tchau tchau", "" ) | Testa se "Bye bye" começa com uma cadeia de texto vazia (Len retorna 0). Facilitando seu uso em expressões Filter, StartsWith é definido para retornar true nesse caso. | verdadeiro |
Experiência do usuário de pesquisa
Em muitos aplicativos, você pode digitar um ou mais caracteres em uma caixa de pesquisa para filtrar uma lista de registros de um grande conjunto de dados. Conforme você digita, a lista mostra apenas os registros que correspondem aos critérios da pesquisa.
Os exemplos no restante deste tópico mostram os resultados da pesquisa em uma lista Clientes que contém esses dados:
Para criar essa fonte de dados como uma coleção, crie um controle Button e defina sua propriedade OnSelect como esta fórmula:
ClearCollect( Clientes, Tabela( { Nome: "Fred Garcia", Empresa: "Northwind Traders" }, { Nome: "Cole Miller", Empresa: "Contoso" }, { Nome: "Glenda Johnson", Empresa: "Contoso" }, { Nome: "Mike Collins", Empresa: "Adventure Works" }, { Nome: "Colleen Jones", Empresa: "Adventure Works" } ) )
Assim como neste exemplo, você pode mostrar uma lista de registros em um controle Gallery na parte inferior da tela. Próximo à parte superior da tela, adicione um controle Text input, chamado SearchInput, para que os usuários possam especificar quais registros os interessam.
Conforme o usuário digita os caracteres em SearchInput, os resultados da galeria são filtrados automaticamente. Nesse caso, a galeria está configurada para mostrar os registros dos quais o nome do cliente (não o nome da empresa) começa com a sequência de caracteres em SearchInput. Se o usuário digita co na caixa de pesquisa, a galeria mostra estes resultados:
Para filtrar com base na coluna Nome, defina a propriedade Items do controle Gallery como uma destas fórmulas:
Fórmula | Descrição | Resultado |
---|---|---|
Filtro(Clientes, ComeçaCom(Nome, SearchInput.Texto)) | Filtra a fonte de dados Customers em busca de registros nos quais a cadeia de caracteres de pesquisa apareça no início da coluna Name. O teste diferencia maiúsculas de minúsculas. Se o usuário digitar co na caixa de pesquisa, a galeria mostrará Colleen Jones e Cole Miller. A Galeria não mostra Mike Collins, porque a coluna Name desse registro não começa com a cadeia de caracteres de pesquisa. | |
Filtro(Clientes, SearchInput.Text em Nome) | Filtra a fonte de dados Customers em busca de registros nos quais a cadeia de caracteres de pesquisa apareça em qualquer lugar da coluna Name. O teste diferencia maiúsculas de minúsculas. Se o usuário digitar co na caixa de pesquisa, a galeria mostrará Colleen Jones,Cole Miller e Mike Collins, pois a cadeia de caracteres de pesquisa aparecerá em algum lugar da coluna Name de todos os registros. | |
Pesquisar(Clientes, SearchInput.Text, "Nome") | Assim como o operador in, a função Search procura uma correspondência em qualquer lugar da coluna Name de cada registro. Observe que você deve colocar o nome da coluna entre aspas duplas. |
Você pode expandir sua pesquisa para incluir a coluna Company, bem como a coluna Name:
Fórmula | Descrição | Resultado |
---|---|---|
Filtro(Clientes, ComeçaCom(Nome, SearchInput.Texto) || ComeçaCom(Empresa, SearchInput.Texto)) | Filtra a fonte de dados Customers em busca de registros nos quais a coluna Name ou a coluna Company comece com a cadeia de caracteres de pesquisa (por exemplo, co). O || operador será true se a função StartsWith for true. | |
Filtro(Clientes, SearchInput.Text em Nome || SearchInput.Text em Empresa) | Filtra a fonte de dados Customers em busca de registros nos quais a coluna Name ou a coluna Company contenham a cadeia de caracteres de pesquisa (por exemplo, co em qualquer lugar). | |
Pesquisar(Clientes, SearchInput.Text, "Nome", "Empresa") | Assim como o operador in, a função Search pesquisa na fonte de dados Customers por registros nos quais a coluna Name ou a coluna Company contém a cadeia de caracteres de pesquisa (por exemplo, co) em qualquer lugar. A função Search é mais fácil de ler e gravar do que Filter se quiser especificar várias colunas e vários operadores in. Observe que você deve colocar os nomes de coluna entre aspas duplas. |