Como usar regex no Talk
O que é Regex (Expressões regulares)
Em algumas situações, você pode precisar que o chatbot reconheça quando o cliente menciona uma palavra ou expressão específica. Isso é útil para direcionar automaticamente o atendimento conforme a necessidade do cliente, garantindo respostas mais rápidas e eficazes.
No Talk, isso pode ser feito com Expressões Regulares (Regex), que permitem criar regras para identificar padrões na resposta do cliente. Esse recurso é usado no bloco "Pedir para digitar", onde o chatbot analisa a mensagem recebida e decide o próximo passo no fluxo de atendimento.
A seguir, vamos ver algumas maneiras de aplicar Regex, desde padrões simples até mais flexíveis e avançados.
Tipos e usos comuns
Regex Simples (Detectando uma única palavra):
A expressão regular mais simples que você pode usar é para detectar palavras específicas dentro da resposta do cliente. Por exemplo, se você quiser que o fluxo siga para um caminho diferente sempre que o cliente mencionar "boleto", você pode usar uma regex simples como:
boleto
Essa regex detectará apenas a palavra "boleto" em qualquer parte da resposta do cliente.
Regex com múltiplas palavras
Se você deseja expandir a busca para várias palavras, como "boleto", "fatura" ou "pagamento", você pode usar a seguinte regex:
(boleto|fatura|pagamento)
Essa regex irá capturar qualquer uma dessas palavras. Ou seja, se o cliente disser "Eu preciso pagar minha fatura" ou "Tenho um boleto para pagar", o fluxo será automaticamente direcionado para o setor financeiro.
Regex mais flexível (Permitindo variações na frase):
Em alguns casos, você pode querer que a regex funcione independentemente do que vem antes ou depois das palavras-chave. Isso é útil quando as respostas do cliente podem variar muito, como em:
- "Gostaria de pagar o boleto."
- "Tenho uma fatura para resolver."
- "Eu preciso de ajuda com o pagamento."
.*(boleto|fatura|pagamento).*
O que acontece aqui:
.*
: Permite qualquer caractere (como palavras extras) antes ou depois das palavras-chave.(boleto|fatura|pagamento)
: Procura por qualquer uma dessas palavras-chave..*
: Permite que haja mais qualquer coisa após a palavra-chave.
Regex mais avançada com modificadores e quebras de linha
Se você precisa ser mais específico e lidar com mensagens que começam com um termo fixo ou que tenham quebras de linha, pode usar modificadores como (?ms)
.
1) Capturando frases no início do texto:
Essa regex captura mensagens que começam com "Preciso de ajuda", ignorando espaços no início e aceitando qualquer coisa depois:
(?ms)^\s*Preciso de ajuda.*$
O que acontece aqui?
^
→ Indica que a correspondência deve ocorrer no início da linha ou mensagem.\s*
→ Permite qualquer número de espaços em branco antes da frase (incluindo nenhum).Preciso de ajuda
→ A frase exata que o chatbot buscará..*
→ Aceita qualquer caractere depois da frase.$
→ Indica que a correspondência deve ocorrer até o final da linha ou mensagem.
Para tornar a regex case-insensitive (ou seja, ignorar a diferenciação entre maiúsculas e minúsculas), você pode adicionar (?i)
no início da regex:
(?ms)(?i)^\s*preciso de ajuda.*$
Agora, a regex reconhecerá "Preciso de ajuda", "preciso de ajuda", "PRECISO DE AJUDA", etc.
2) Capturando frases com padrões específicos:
Muitas vezes, os clientes iniciam a mensagem com uma saudação antes de descreverem seu problema. Portanto, se você deseja que a regex identifique o termo "preciso de ajuda", mesmo que venha depois de uma saudação como "Olá", essa expressão regular fará isso, considerando também espaços extras ou quebras de linha.
Exemplo: Se o cliente disser "Olá, aqui é o Luiz, eu preciso de ajuda com o meu pedido", a regex ainda será capaz de capturar a solicitação corretamente.
(?i)^Olá.*,?\s*preciso de ajuda.*
O que acontece aqui?
(?i)
→ Ignora maiúsculas e minúsculas ("Olá", "olá", "OLÁ" serão aceitos).^Olá
→ Obriga a mensagem a começar com "Olá"..*,?
→ O.*
permite qualquer texto após "Olá", e,?
faz com que a vírgula seja opcional. Isso cobre mensagens como "Olá, preciso de ajuda" e "Olá preciso de ajuda".\s*
→ Permite ou ignora espaços extras antes de "preciso de ajuda".preciso de ajuda.*
→ Garante que "preciso de ajuda" esteja em algum lugar depois do "Olá".
Exemplo de uso
Veja como fica em um exemplo simples onde é solicitado ao cliente o seu CPF, e caso o cliente faça referência na resposta a boleto, fatura ou pagamento, o mesmo é transferido automaticamente para o setor financeiro. Essa regex irá capturar qualquer uma dessas palavras. Ou seja, se o cliente disser "Eu preciso pagar minha fatura" ou "Tenho um boleto para pagar", o fluxo será automaticamente direcionado para o setor financeiro.
Como testar
Você pode testar o funcionamento diretamente no bloco, clicando em "Testar Opções". Isso permite verificar, em tempo real, se a expressão regular está reconhecendo corretamente as palavras ou padrões desejados antes de ativar o fluxo para os clientes.
Esperamos que este tutorial tenha te ajudado a entender como usar Expressões Regulares (Regex) no Talk. Teste e explore diferentes expressões para adaptar o fluxo às necessidades do seu negócio, proporcionando um atendimento mais otimizado e inteligente.