8 Expressões Regulares para PHP consideradas úteis
Postado por: Pedro Rogério emNo site Devolio, você pode encontrar uma lista com 8 expressões regulares muito úteis na hora de se programar em PHP, muitas delas utilizadas para validar e-mail, nomes de usuário, números telefônicos, e-mails entre outras.
Validar nome de usuário
Essa regra é para permitir usuários com nome de 4 a 28 caracteres, alfanuméricos e acentuados:
$string = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $string)) {
echo "example 1 successful.";
}
Números telefônicos
Essa regra é para validar números de telefone, e os números devem ser escritos da seguinte maneira (###)###-####:
$string = "(032)555-5555";
if (preg_match('/^(\(?[2-9]{1}[0-9]{2}\)?|[0-9]{3,3}[-. ]?)[ ][0-9]{3,3}[-. ]?[0-9]{4,4}$/', $string)) {
echo "example 2 successful.";
}
Endereços de e-mail
A regra para validar e-mails é a seguinte:
$string = "first.last@domain.co.uk";
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}$/',
$string)) {
echo "example 3 successful.";
}
Códigos Postais
Permie utilizar números no seguinte formato: xxxxx e xxxxx-xxxx
$string = "55324-4324";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{4,4})?$/', $string)) {
echo "example 4 successful.";
}
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:
$string = "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}$',
$string)) {
echo "example 5 successful.";
}
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
$string = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $string)) {
echo "example 6 successful.";
}
Buscar comentários multi-linha
Uma forma simples de buscar e eliminar comentários multi-linha em PHP, CSS e outras linguagens:
$string = "/* commmmment */";
if (preg_match('/^[(/*)+.+(*/)]$/', $string)) {
echo "example 7 successful.";
}
Datas
Um formato de data típico MM/DD/YYYY e sua validação é a seguinte:
$string = "10/15/2007";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $string)) {
echo "example 8 successful.";
}













Grande achado!
Boa!!
[...] complementar, olhem o post do Pinceladas da Web : uma lista com 8 expressões regulares muito úteis na hora de se programar em PHP, muitas delas [...]
Muito bom!
Muito bom e útil. Alguma boa referencia para entender melhor expressões regulares? Gostaria de tentar uma alteração na expressão criada para validação de username. Na verdade, gostaria de incluir “-” na string…
Muito Bom! facil de entender e útil para aplicações!!!
Mandou bem!
Muito legal. Para quem programa em Java, tem esse tutorial sobre Expressões Regulares em Java:
http://dosoftware.wordpress.com/2008/02/23/introducao-a-expressoes-regulares-com-java/
Show de bola! Estas expressões estão sendo muito úteis. Parabéns!
Expressões regulares são de grande importância para qualquer desenvolvedor.
As dicas ficaram show d+.
Opa valeu pela dica das cores em hexadecimal ajudou bastante!
[...] por Pinceladas da Web , original por Carlos [...]
legal, ja faz tempo que tava a procura disso.
Show de Bola!
Muito boa dica! Parabéns pela sua iniciativa.
Boa tarde, vê se vocês podem me ajudar!
tenho um fragmento de código que é isto aki:
$out =
‘
Nome da mae
idade
Num de dependentes
status
Obs
‘ ;
Este código eu não tenho como editar senão já teria feito!
Eu estou pegando os valores dos da seguinte forma:
$nome1= explode(”, $out);
$nome2 = explode(” , $nome1[1]);
$nome = $nome2[0];
E modificando o valor do width pra cada .
Eis o problema, tenho dois valores de width=”140″ e ele sempre pega o primeiro, já tentei com Regex e nada!
Alguém se habilita?
Grato
xiii n saiu os codigos
[...] por Pinceladas da Web , original por Carlos [...]
Parabéns, ótima postagem!