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:

Exemplo de lista Customers.

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.

Galeria de clientes.

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:

Galeria de clientes com pesquisa.

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. Exemplo de StartsWith.
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. Exemplo de SearchInput.Text em Name.
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. Exemplo de SearchInput.Text com Name.

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. Filtrar com StartsWith.
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). Filtro com texto de pesquisa no nome.
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. Filtro com texto de pesquisa no nome, empresa.