Меню

Expressões regulares
As expressões regulares são um mecanismo usado para buscar e substituir textos.
Permite executar outro script no script atual sem duplicá-lo.

Um exemplo simples de uso de expressões regulares: você precisa encontrar todas as datas no texto, para isso você precisa definir o formato de busca de dados: "DD.MM.AAAA".

Você pode trabalhar com expressões regulares em:
  • Notepad++;
  • Regex101;
  • Myregexp;
  • Regexr.
Caracteres especiais são usados para criar um padrão.

Exemplos de caracteres especiais:
  • Um ponto em uma expressão regular substitui qualquer caráter. Se você procurar por ".o" você encontrará: thief, bor, sor, chor.... Se quisermos encontrar uma expressão que contenha exatamente um ponto (ou qualquer outro personagem especial), temos que escapar dele prefixando-o com uma contrabarra.
  • Por exemplo, para pesquisar todos os documentos com a extensão txt, use a expressão regular "txt".
  • Os colchetes [] indicam alternativas válidas. Por exemplo, para encontrar todas as menções da palavra zero (que tem duas grafias), use a seguinte expressão regular: "n[ow]l".
  • ^ entre colchetes [] permite que uma exceção seja escrita. Por exemplo, a expressão [^a-g8] significa qualquer caractere, exceto a, b, c, d e o dígito 8.

Exemplos
1. Vamos escrever uma expressão regular para procurar por um número de telefone em Regex101.
Primeiro é preciso definir os caracteres aceitáveis. Para um número de telefone, estes são todos os dígitos 0-9 e "+".
Definimos esta condição usando a expressão [+,0-9]. Escreva-a em Regex101.

Observe que os parâmetros de busca (" flags ") devem ser definidos.

Alguns modos disponíveis:

  • global - procurar todas as correspondências (caso contrário, apenas a primeira correspondência é encontrada);
  • milti line - modo multi-linhas;
  • intensive - pesquisa insensível a casos ("A" e "a" são tratados como caracteres idênticos).

Agora todos os números e "+" são encontrados. Para encontrar somente números, é necessário limitar a busca ao número de caracteres. Em nosso exemplo, o número de telefone contém 11 ou 12 caracteres. Vamos acrescentar esta condição.
Obtemos a expressão: [+,0-9]{11,12}.

Agora somente os números de telefone são encontrados.
2. Vamos escrever uma expressão para procurar por um e-mail.

O endereço pode conter caracteres alfabéticos e numéricos. Especificamos isto com a condição [a-z,0-9].
Agora temos que especificar o número de caracteres {1,20} (se não o fizermos, apenas 1 caractere será encontrado).
Então você tem que digitar o caracter obrigatório "@" e assim por diante.
O ponto deve ser escapado (contrabarra), caso contrário será percebido como qualquer personagem.