8 Expressões Regulares muito Úteis

Bom, como prometido, aqui estão 8 expressões regulares muito úteis que podem ser utilizadas em seu código PHP, ou em C, C++, C#, JAVA, Python etc.

Fique a vontade para distribuí-las e comentá-las.

Bom. Se você não tem conhecimento no assunto, recomendo leitura de algo específico como o livro do Aurélio. As expressões abaixo não serão explicadas, mas simplesmente expostas.

[ad#entrenoticias]

Validar nome de usuário

Essa regra é para permitir usuários com nome de 4 a 28 caracteres, alfanuméricos e acentuados:

$nome = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $nome)) {
    echo "exemplo 1 passou no teste.";
}

Números telefônicos

Essa regra é para validar números de telefone, e os números devem ser escritos da seguinte maneira (###)###-####:

$telefone = "(27)3333-4444";
if (preg_match('^\(?[0-9]{2}\)?[0-9]{4}-?[0-9]{4}$', $telefone)) {
echo "exemplo 2 passou no teste.";
}

Endereços de e-mail

A regra para validar e-mails é a seguinte:

$email= "primeiro.ultimo@dominio.com.br";
if (preg_match(
'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
$email)) {
echo "exemplo 3 passou no teste.";
}

Códigos Postais

Permite utilizar números no seguinte formato: xxxxxxxx, xxxxx xxx e xxxxx-xxx


$cep = "29100-075";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{3,3})?$/', $cep)) {
echo "exemplo 4 passou no teste.";
}

Endereços IP

Não é necessário efetuar PING ou qualquer coisa do tipo, essa regra é válida para verificar se os IPs foram escritos corretamente, como esse exemplo 255.255.255.0:

$ip= "255.255.255.0";
if (preg_match(
'^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$',
$ip)) {
echo "exemplo 5 passou no teste.";
}

Cores Hexadecimais

Você também pode verificar valores hexadecimais em suas 2 formas, a normal e a abreviada: (#333, 333, #333333 o 333333) com o símbolo # opcional

$cores = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $cores)) {
echo "exemplo 6 passou no teste.";
}

Buscar comentários multi-linha

Uma forma simples de buscar e eliminar comentários multi-linha em PHP, CSS e outras linguagens:

$comentario= "/* commmmment */";
if (preg_match('/^[(/*)+.+(*/)]$/', $comentario)) {
echo "exemplo 7 passou no teste.";
}

Datas

Um formato de data típico DD/MM/YYYY e sua validação é a seguinte:


$data= "15/10/2009";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $data)) {
echo "exemplo 8 passou no teste.";
}

Bom.
Dicas dadas, agora é só usar :-)

Tags: , , , ,
Se você gostou do post, não se esqueça de inscrever-se no feed RSS. Inscreva-se via RSS

Deixe Comentário