Expressões regulares em PHP com exemplos: guia completo para iniciantes

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Expressões regulares em PHP: o que são e para que servem?



Expressões regulares (regex) são uma ferramenta poderosa para buscar, substituir e validar strings com base em padrões. Em PHP, elas são implementadas através de um conjunto de funções que permitem ao desenvolvedor trabalhar de forma flexível com dados textuais. Para iniciantes, este tópico pode parecer complexo, mas na prática ele simplifica significativamente o processamento de formulários, validação de e-mail, parsing de URL e muitas outras tarefas.



Neste artigo, abordaremos a sintaxe básica das expressões regulares em PHP, veremos as principais funções e apresentaremos exemplos claros para cada uma delas.



1. Fundamentos da sintaxe de expressões regulares



Uma expressão regular em PHP é uma string delimitada por caracteres delimitadores (geralmente a barra /). Dentro dessa string, encontram-se caracteres especiais (metacaracteres) e caracteres comuns.



Principais metacaracteres



  • . — qualquer caractere, exceto quebra de linha.
  • ^ — início da string.
  • $ — fim da string.
  • * — zero ou mais repetições do caractere anterior.
  • + — uma ou mais repetições.
  • ? — zero ou uma repetição.
  • \\d — qualquer dígito (equivalente a [0-9]).
  • \\w — qualquer letra, dígito ou sublinhado.
  • \\s — qualquer caractere de espaço em branco.
  • [] — classe de caracteres (exemplo: [a-z] — todas as letras minúsculas latinas).
  • () — agrupamento.


Exemplo de um padrão simples



Suponha que queremos verificar se uma string contém a palavra "php". O padrão mais simples seria:



/php/


Este padrão encontrará a substring "php" em qualquer lugar da string (por exemplo, em "PHP" não encontrará, pois a caixa é relevante). Para tornar a busca insensível a maiúsculas/minúsculas, usamos o modificador i:



/php/i


Agora o padrão corresponderá a "PHP", "Php" e "php".



2. Principais funções para trabalhar com expressões regulares em PHP



O PHP oferece várias funções-chave. Vamos ver as três mais populares: preg_match, preg_replace e preg_split.



2.1. preg_match — verificação de correspondência



A função preg_match verifica se uma string corresponde a um padrão. Ela retorna 1 se uma correspondência for encontrada e 0 caso contrário. Também é possível passar um terceiro argumento — um array que receberá todas as correspondências encontradas.



Exemplo: validação de e-mail



<?php$email = "user@example.com";$pattern = "/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/";

if (preg_match($pattern, $email)) { echo "E-mail válido!";} else { echo "E-mail inválido!";}?>


Explicação do padrão:

  • ^ — início da string.
  • [a-zA-Z0-9._-]+ — um ou mais caracteres: letras latinas, dígitos, ponto, sublinhado ou hífen.
  • @ — caractere "arroba" obrigatório.
  • [a-zA-Z0-9.-]+ — nome do domínio.
  • \\. — ponto escapado.
  • [a-zA-Z]{2,} — zona do domínio (pelo menos 2 letras).
  • $ — fim da string.


2.2. preg_replace — substituição por padrão



A função preg_replace busca correspondências com o padrão e as substitui pela string especificada. Isso é especialmente útil para limpeza de dados ou formatação de texto.



Exemplo: remover todos os dígitos de uma string



<?php$text = "Meu número: 123-456-7890";$pattern = "/\\d+/";$replacement = "[DÍGITOS]";

$result = preg_replace($pattern, $replacement, $text);echo $result; // Exibirá: "Meu número: [DÍGITOS]-[DÍGITOS]-[DÍGITOS]"?>
<

Blogs

Book Recommendations