Como ler uma Regex
Leia o padrão da esquerda para a direita e separe mentalmente em blocos. Em ^DEV-\d{4}$, por exemplo, ^ fixa o início, DEV- é literal, \d{4} exige quatro dígitos e $ fixa o fim.
Regex: ^DEV-\d{4}$
Aceita: DEV-2048
Rejeita: XDEV-2048, DEV-20A8, DEV-204801. Literais, escapes e o ponto
Caracteres comuns procuram a si mesmos. Alguns símbolos têm função especial e precisam de escape quando você quer tratá-los literalmente. O ponto . representa qualquer caractere, enquanto \. representa um ponto real.
c.t → cat, cot, c9t 3\.14 → 3.14
2. Classes de caracteres
Colchetes descrevem um conjunto de possibilidades. [ABC] aceita uma das três letras; [A-Z] representa um intervalo; [^0-9] significa qualquer caractere que não seja dígito.
[A-F0-9] → um dígito hexadecimal em maiúsculo [^\s] → um caractere que não seja espaço
3. Atalhos: \d, \w e \s
\d representa dígito, \w representa caractere de palavra e \s representa espaço em branco. As versões maiúsculas, como \D, \W e \S, representam o complemento.
Esses atalhos são úteis, mas verifique a linguagem e o modo Unicode quando o requisito envolver alfabetos, acentos ou caracteres internacionais.
4. Quantificadores
Quantificadores controlam a quantidade do elemento anterior. ? significa zero ou uma vez, * zero ou mais, + uma ou mais, {3} exatamente três e {2,5} de duas a cinco ocorrências.
\d{5}-\d{3} → estrutura de CEP formatado
https? → http ou https5. Âncoras e limites
^ e $ são essenciais quando você quer validar a string inteira. Sem elas, uma expressão pode encontrar apenas um trecho dentro de um valor maior e ainda retornar match.
\d{3} encontra 123 dentro de A123B
^\d{3}$ aceita somente uma string com três dígitos6. Grupos, captura e alternância
Parênteses agrupam partes do padrão. Um grupo comum, como (INFO|WARN|ERROR), também captura o trecho encontrado. Use (?:...) quando quiser agrupar sem capturar. Grupos nomeados, como (?<ddd>\d{2}), facilitam a leitura.
O jogo agora possui o Raio-X da Regex: quando sua expressão usa grupos de captura, cada grupo é exibido com seu nome ou número e com o trecho correspondente destacado.
7. Flags mais comuns
Flags alteram o modo de execução. i ignora diferença entre maiúsculas e minúsculas; g procura todas as ocorrências; m faz as âncoras trabalharem linha a linha; s permite que o ponto também atravesse quebras de linha.
No Playground você pode testar diferentes flags imediatamente.
8. Lookahead e lookbehind
Lookarounds verificam contexto sem consumir esse contexto como parte do match. (?=...) olha para frente, (?!...) nega o que vem à frente, (?<=...) olha para trás e (?<!...) nega o que vem atrás.
\d+(?= reais) → captura 150 em "150 reais" (?<=R\$ )\d+ → captura 150 em "R$ 150"
As fases 21 a 24 do RegexArena praticam essas quatro ideias com feedback visual.
9. Uma estratégia para construir padrões
- Escreva exemplos que devem passar.
- Escreva exemplos que precisam falhar.
- Comece pelo formato mais simples.
- Adicione âncoras e limites.
- Execute contra os casos negativos.
- Só depois compacte ou generalize o padrão.
O objetivo não é produzir a menor Regex possível. Em sistemas reais, legibilidade e previsibilidade geralmente valem mais do que alguns caracteres economizados.
10. Como depurar quando “quase funciona”
Quando uma expressão captura demais, descubra qual parte ficou permissiva. Quando captura de menos, procure uma restrição exagerada. Grupos de captura ajudam a dividir o problema. O Raio-X do jogo mostra visualmente quais grupos capturaram quais trechos, tornando esse diagnóstico mais direto.
(?<usuario>[\w.-]+)@(?<dominio>[\w.-]+)\.(?<tld>[A-Za-z]{2,})11. Regex em produção
Regex é excelente para busca, extração, transformação e validação estrutural. Mas não substitui regras de negócio. Uma Regex consegue verificar o formato visual de CPF, CEP ou data; isso não significa que o valor exista ou seja semanticamente válido.
Também evite padrões excessivamente complexos quando uma função da linguagem ou uma biblioteca especializada resolver o problema de forma mais segura e legível.
12. Próximos passos
Depois dos fundamentos, escolha um caso real: e-mail, CPF, CEP, telefone, datas, URLs, JavaScript ou Java. Em seguida, use os exercícios e o jogo para testar se você consegue construir os padrões sem copiar a solução.
Pratique agora
O jogo possui 24 fases progressivas, incluindo quatro missões avançadas sobre lookahead e lookbehind.