28 de março de 2025
Expressões regulares, ou regex, são uma ferramenta poderosa para buscar, validar e manipular textos. Elas são usadas em diversas linguagens de programação, editores de texto e ferramentas de linha de comando. Neste post, vamos explorar os conceitos básicos de regex, com exemplos práticos para você começar a usar essa ferramenta no seu dia a dia.
Cada exemplo mostra:
Padrão: A expressão regular que estamos testando
Texto de exemplo: O texto onde vamos buscar correspondências
O que casa: As partes do texto que combinam com o padrão
O que não casa: Partes que não atendem ao padrão
Explicação: Por que o padrão funciona assim
.
(Ponto) - Corresponde a qualquer caracterePadrão: a.b
Texto de teste:
aXb a4b a b axb aaab
O que casa:
aXb
(X é qualquer caractere)
a4b
(4 é qualquer caractere)
a b
(espaço é qualquer caractere)
axb
(x é qualquer caractere)
O que não casa:
aaab
(precisa ter exatamente um caractere entre os 'a's e 'b's)
Explicação: O ponto substitui qualquer caractere único, exceto quebra de linha.
*
(Asterisco) - Zero ou mais ocorrênciasPadrão: ab*c
Texto de teste:
ac abc abbc abbbbc axc
O que casa:
ac
(zero 'b's)
abc
(um 'b')
abbc
(dois 'b's)
abbbbc
(quatro 'b's)
O que não casa:
axc
(o padrão exige apenas 'b's entre 'a' e 'c')
Explicação: O asterisco permite que o caractere anterior apareça zero ou várias vezes.
+
(Mais) - Uma ou mais ocorrênciasPadrão: ab+c
Texto de teste:
abc abbc abbbbc ac axc
O que casa:
abc
(um 'b')
abbc
(dois 'b's)
abbbbc
(quatro 'b's)
O que não casa:
ac
(precisa de pelo menos um 'b')
axc
(só permite 'b's entre 'a' e 'c')
Explicação: O + exige pelo menos uma ocorrência do caractere anterior.
d
(Dígito) - Encontrando númerosPadrão: dd-dd-dddd
Texto de teste:
Data: 25-12-2023 Aniversário: 01/01/1990 Telefone: 11-98765-4321 Código: AB12-3456
O que casa:
25-12-2023
(formato DD-MM-AAAA)
O que não casa:
01/01/1990
(usa barras em vez de hífens)
11-98765-4321
(tem mais dígitos)
AB12-3456
(contém letras)
Explicação: d
encontra qualquer dígito de 0 a 9. Estamos buscando o formato de data com dois dígitos, hífen, dois dígitos, hífen, quatro dígitos.
[]
(Conjunto de Caracteres) - Correspondendo a opções específicasPadrão: [AEIOU]migo
Texto de teste:
Amigo Emigo Imigo Omigo Umigo amigo Hmigo
O que casa:
Amigo
Emigo
Imigo
Omigo
Umigo
O que não casa:
amigo
(a vogal precisa ser maiúscula)
Hmigo
(H não está no conjunto)
Explicação: Os colchetes definem um conjunto de caracteres aceitáveis. Neste caso, apenas vogais maiúsculas no início.
()
(Grupos) - Agrupando padrõesPadrão: (ab)+c
Texto de teste:
abc ababc abababc ac abbc
O que casa:
abc
(um grupo "ab")
ababc
(dois grupos "ab")
abababc
(três grupos "ab")
O que não casa:
ac
(faltam os "ab")
abbc
(o segundo "b" extra quebra o padrão)
Explicação: Os parênteses criam grupos que podem ser quantificados. O +
aplica-se a todo o grupo (ab)
, significando "uma ou mais repetições de 'ab'".
^
(Circunflexo) - Início da stringPadrão: ^Olá
Texto de teste:
Olá mundo Oi, Olá Olá
O que casa:
Olá mundo
(começa com "Olá")
O que não casa:
Oi, Olá
("Olá" não está no início)
Olá
(espaços antes)
Explicação: O ^
verifica se o padrão ocorre no início exato da string, ignorando qualquer texto anterior.
$
(Cifrão) - Fim da stringPadrão: mundo!$
Texto de teste:
Olá mundo! mundo! Olá mundo!
O que casa:
Olá mundo!
(termina com "mundo!")
mundo!
(termina exatamente com "mundo!")
O que não casa:
mundo! Olá
("mundo!" não está no final)
Explicação: O $
verifica se o padrão ocorre no final exato da string, ignorando qualquer texto posterior.
Para testar suas expressões regulares, recomendo o site regex101.com que oferece um ambiente interativo para criar e testar regex.
Padrão: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$
Explicação:
^[a-zA-Z0-9._%+-]+
: Parte local do e-mail (antes do @
).
@[a-zA-Z0-9.-]+
: Domínio do e-mail.
.[a-zA-Z]{2,}$
: Extensão do domínio (ex: .com
, .org
).
Padrão: d{2}/d{2}/d{4}
Explicação:
d{2}
: Dois dígitos para o dia e mês.
d{4}
: Quatro dígitos para o ano.
Comece com padrões simples e vá aumentando a complexidade
Pratique com textos reais do seu dia a dia
Explore as ferramentas de regex na sua linguagem preferida
Com esses exemplos práticos, você já pode começar a usar regex em seus projetos! Lembre-se que a prática leva à perfeição quando se trata de expressões regulares.
Se você quer se aprofundar neste assunto, recomendo o livro Expressões Regulares: Uma Abordagem Divertida
Com uma linguagem descontraída e envolvente, o livro mantém o leitor interessado do início ao fim.
Visualizações: 130
05 de abril de 2025
23 de março de 2025
18 de março de 2025
14 de março de 2025
27 de fevereiro de 2025
05 de abril de 2016