Os seguintes exemplos ilustram o uso e a construção de expressões regulares simples. Cada exemplo inclui o tipo de texto a ser correspondido, uma ou mais expressões regulares que correspondem a esse texto e observações que explicam o uso de formatação e caracteres especiais.
Importante: só há compatibilidade com a Sintaxe do RE2 que é um pouco diferente do PCRE. Por padrão, as expressões regulares diferenciam maiúsculas de minúsculas.
Observação: os exemplos abaixo talvez sejam úteis como pontos de partida para expressões regulares mais complexas. No entanto, para corresponder uma única palavra, sugerimos o uso das configurações de Compliance do conteúdo ou Conteúdo censurável.
Corresponder somente à frase exata |
Exemplo de uso |
Corresponde à frase stock tips. |
Exemplos de regex |
Exemplo 1: (\W|^)stock\stips(\W|$)
Exemplo 2: (\W|^)stock\s{0,3}tips(\W|$)
Exemplo 3: (\W|^)stock\s{0,3}tip(s){0,1}(\W|$) |
Observações |
- \W corresponde a qualquer caractere que não seja uma letra, um dígito ou sublinhado. Impede que a regex corresponda a caracteres antes ou depois da frase.
- No exemplo 2, \s corresponde a um caractere de espaço, e {0,3} indica que de 0 a 3 espaços podem ocorrer entre as palavras stock e tip.
- ^ corresponde ao início de uma nova linha. Permite que a regex corresponda à frase se ela aparecer no início de uma linha, sem caracteres antes dela.
- $ corresponde ao fim de uma linha. Permite que a regex corresponda à frase se ela aparecer no fim de uma linha, sem caracteres depois dela.
- No exemplo 3, (s) corresponde à letra s, e {0,1} indica que a letra pode ocorrer 0 ou 1 vez depois da palavra "tip". Portanto, a regex corresponde a stock tip e stock tips. Você também pode usar o caractere ? em vez de {0,1}
|
Corresponder a uma palavra ou frase em uma lista |
Exemplo de uso |
Corresponde a qualquer palavra ou frase na lista a seguir:
- baloney
- darn
- drat
- fooey
- gosh darnit
- heck
|
Exemplo de regex |
(?i)(\W|^)(baloney|darn|drat|fooey|gosh\sdarnit|heck)(\W|$) |
Observações |
-
(...) agrupa todas as palavras, de forma que a classe de caractere \W seja aplicável a todas as palavras entre parênteses.
-
i) faz a correspondência de conteúdo não diferenciar maiúsculas de minúsculas.
|
Corresponder a palavra com grafias diferentes ou caracteres especiais |
Exemplo de uso
|
Corresponde às palavras fast dinheiro e algumas das ofuscações que os criadores de spam usam, como:
- f@st c@sh
- f@$t c@$h
- fa$t ca$h
|
Exemplo de regex |
f[a4@][s5\$][t7] +c[a4@][s5\$]h
|
Observações |
- \W não é incluído, para que outros caracteres possam aparecer antes ou depois de qualquer uma das variantes de fast cash. Por exemplo, a regex ainda corresponde a fast cash no seguinte texto:
Fast cash!! ou ***f@st ca$h***
- [a4@] corresponde aos caracteres a, 4 ou @ na segunda posição de caractere da palavra, refletindo substituições comuns de letras que os criadores de spam usam para evitar correspondências de texto simples.
|
Corresponder a qualquer endereço de e-mail de um domínio específico |
Exemplo de uso |
Corresponde a qualquer endereço de e-mail dos domínios yahoo.com, hotmail.com e gmail.com. |
Exemplo de regex |
(\W|^)[\w.\-]{0,25}@(yahoo|hotmail|gmail)\.com(\W|$) |
Observações |
- \W corresponde a qualquer caractere que não seja uma letra, um dígito ou sublinhado. Ele impede que a regex corresponda a caracteres antes ou depois do endereço de e-mail.
- ^ corresponde ao início de uma nova linha. Ele permite que a regex corresponda ao endereço se ele aparecer no início de uma linha, sem caracteres antes dele.
- $ corresponde ao fim de uma linha. Permite que a regex corresponda ao endereço quando ele aparece no fim de uma linha, sem caracteres depois dele.
- [\w.\-] corresponde a qualquer caractere de palavra (a-z, A-Z, 0-9, ou sublinhado), ponto final ou hífen. Esses são os caracteres válidos usados mais frequentemente na primeira parte de um endereço de e-mail. O \- (que indica um hífen) precisa ocorrer por último na lista de caracteres dentro dos colchetes.
- A \ antes do travessão e do ponto fazem o "escape" desses caracteres. Isso indica que o travessão e o ponto não são caracteres especiais da regex. Não é necessário realizar o escape do ponto dentro dos colchetes.
- {0,25} indica que de 0 a 25 caracteres no conjunto de caracteres precedente podem ocorrer antes do símbolo @. A configuração de e-mail "Compliance do conteúdo" é compatível com a correspondência de até 25 caracteres para cada conjunto de caracteres em uma expressão regular.
- A formatação (...) agrupa os domínios, e o caractere | que os separa indica um "ou".
|
Corresponder a qualquer endereço IP em um intervalo |
Exemplo de uso |
Corresponde a qualquer endereço IP com a variação de 192.168.1.0 a 192.168.1.255. |
Exemplos de regex |
Exemplo 1: 192\.168\.1\.
Exemplo 2: 192\.168\.1\.\d{1,3} |
Observações |
- A \ antes de cada ponto realiza o "escape" do ponto. Isso indica que o ponto não é um caractere especial da regex.
- No Exemplo 1, como nenhum caractere aparece depois do último ponto, a regex corresponde a qualquer endereço IP iniciado por 192.168.1., com qualquer número em seguida.
- No Exemplo 2, \d corresponde a qualquer dígito de 0 a 9 depois do último ponto, e {1,3} indica que os digitos de 1 a 3 podem aparecer depois desse último ponto. Nesse caso, a regex corresponde a qualquer endereço IP completo iniciado por 192.168.1.. Ela também corresponde a endereços IP inválidos, como 192.168.1.999.
|
Corresponder a um formato alfanumérico |
Exemplo de uso |
Corresponde aos números de ordem de compra (PO) de sua empresa. Esse número tem vários formatos possíveis, como:
- PO nn-nnnnn
- PO-nn-nnnn
- PO# nn nnnn
- PO#nn-nnnn
- PO nnnnnn
|
Exemplo de regex |
(\W|^)po[#\-]{0,1}\s{0,1}\d{2}[\s-]{0,1}\d{4}(\W|$) |
Observações |
- \W corresponde a qualquer caractere que não seja uma letra, um dígito ou sublinhado. Ele impede que a regex corresponda a caracteres antes ou depois do número.
- ^ corresponde ao início de uma nova linha. Permite que a regex corresponda ao número se ele aparecer no início de uma linha, sem caracteres antes dele.
- $ corresponde ao fim de uma linha. Permite que a regex corresponda ao número se ele aparecer no fim da linha, sem caracteres depois dele.
- [#\-] corresponde a um símbolo de libra ou a um hífen depois das letras po, e {0,1} indica que um desses caracteres pode ocorrer 0 ou 1 vez. O \- (que indica um hífen) precisa ocorrer por último na lista de caracteres dentro dos colchetes.
- \s corresponde a um espaço, e {0,1} indica que um espaço pode ocorrer 0 ou 1 vez.
- \d corresponde a qualquer dígito de 0 a 9, e {2} indica que exatamente dois dígitos devem aparecer nessa posição no número.
|