8 Expressões Regulares para PHP consideradas úteis

Postado por: Pedro Rogério em

No 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.";
}

Referências

Posts Relacionados

Confira também outros artigos interessantes postados aqui no blog.

Gostou desse post?

Assine o nosso Feed RSS, siga-nos no Twitter, ou simplesmente nos recomende a seus amigos!

Sobre Pedro Rogério

Pedro Rogério é desenvolvedor web por paixão, não saberia fazer melhor outra coisa. Além de escrever para o Pinceladas da Web também escreve para o CSS no Lanche, blog voltado ao desenvolvimento front-end.

19 Responses to “8 Expressões Regulares para PHP consideradas úteis”

  1. [...] 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 [...]

  2. Alê disse:

    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…

  3. Muito Bom! facil de entender e útil para aplicações!!!

  4. Renato disse:

    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/

  5. Show de bola! Estas expressões estão sendo muito úteis. Parabéns!

  6. Matt's disse:

    Expressões regulares são de grande importância para qualquer desenvolvedor.
    As dicas ficaram show d+.

  7. Opa valeu pela dica das cores em hexadecimal ajudou bastante!

  8. bond, James disse:

    legal, ja faz tempo que tava a procura disso.

  9. Ruben disse:

    Show de Bola!

  10. Allan disse:

    Muito boa dica! Parabéns pela sua iniciativa.

  11. Raphael disse:

    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

  12. Raphael disse:

    xiii n saiu os codigos

  13. Josias disse:

    Parabéns, ótima postagem!

Leave a Reply