8 expresiones regulares para PHP muy útiles

En Devolio.com el autor hizo una lista de 8 expresiones regurales que considera útiles a la hora de programar con PHP, muchas de ellas utilizadas para validar nombres de usuario, números telefónicos, direcciones de email entre otras.

Validar un nombre de usuario

Esta regla es para permitir usuarios de 4 hasta 28 caracteres de longitud, alfanuméricos y permitir guiones bajos.

$string = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $string)) {
    echo "example 1 successful.";
}

Números telefónicos
Esto es para validar números de teléfono (en el formato de Estados Unidos, Canadá y México) el número debe ser de la siguiente manera: (###)###-####

$string = "(032)555-5555";
if (preg_match('/^(\(?[0-9]{3,3}\)?|[0-9]{3,3}[-. ]?)[ ][0-9]{3,3}[-. ]?[0-9]{4,4}$/', $string)) {
echo "ejemplo 2 realizado con éxito.";
}

El número de teléfono puede ser escrito así (###) ###-####, o así ###-###-#### y también va a validar.

Direcciones de Email

No hace falta decir más el código es el siguiente.

$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 "ejemplo 3 realizado con éxito.";
}

Códigos postales

Códigos postales de que permite solo números en el siguiente formato xxxxx y xxxxx-xxxx

$string = "55324-4324";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{4,4})?$/', $string)) {
    echo "ejemplo 4 realizado con éxito.";
}

Direcciones IP

No necesitamos hacer un PING ni nada por el estilo, sólo verificamos que estén bien escritas, cómo este ejemplo 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 "ejemplo 5 realizado con éxito.";
}

Colores hexadecimales

Ya que hablamos de números tambien podemos verificar valores hexadecimales de números en sus 2 formas la normal y la abreviada (#333, 333, #333333 o 333333) con el símbolo # opcional.

$string = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $string)) {
    echo "ejemplo 6 realizado con éxito.";
}

Buscar comentarios multi-línea

Una forma simple de buscar o eliminar comentarios multilínea en PHP/CSS/Otros lenguajes.

$string = "/* commmmment */";
if (preg_match('/^[(/*)+.+(*/)]$/', $string)) {
    echo "ejemplo 7 realizado con éxito.";
}

Fechas
Uno de los formatos de fechas típicos es el MM/DD/YYYY y su validación es la siguiente.

$string = "10/15/2007";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $string)) {
    echo "ejemplo 8 realizado con éxito.";
}

¿Conoces alguna otra expresión regular que se útil?

16 Comentarios (Agrega el tuyo)

  1. Comentado 19 de Octubre de 2007 a las 6:27 PM | Permalink | Responder ↓

    Muy interesante. Yo suelo programar en ASP, y hay algunas pequeñas diferencias. En cualquier caso, las expresiones regulares suelen ser muy útiles.

    Para agradecerte tu ayuda, te dejo este meme con mucho cariño ;-)

    http://soportetonto.blogspot.com/2007/10/por-que-escribo-este-blog.html

  2. Comentado 3 de Diciembre de 2007 a las 2:46 PM | Permalink | Responder ↓

    Buscando en San google di con esta pagina, era la informacion que buscaba, buen tip.

    Saludos desde Veracruz,Mexico

  3. samuel
    Comentado 12 de Febrero de 2008 a las 11:06 PM | Permalink | Responder ↓

    hey muchas gracias desde hacia 1 hora estaba buscando la ER del usuario muchas gracias

  4. Comentado 29 de Marzo de 2008 a las 2:59 PM | Permalink | Responder ↓

    muy bueno, muchas gracias

  5. adriana
    Comentado 5 de Agosto de 2008 a las 12:40 PM | Permalink | Responder ↓

    necesito codigo para validar un correo electronico

  6. Edison
    Comentado 8 de Octubre de 2008 a las 12:29 PM | Permalink | Responder ↓

    Al fin pude encontra una de estas páginas con relación a expresiones regulares.

    De antemano.

    Gracias

  7. fidel mar
    Comentado 8 de Octubre de 2008 a las 3:28 PM | Permalink | Responder ↓

    esta chido muchas felicidades va.

  8. Yisel
    Comentado 16 de Noviembre de 2008 a las 12:53 AM | Permalink | Responder ↓

    Este sitio esta muy bueno para mi que programo en zend-estudio y aqui no aparecen en la ayuda.
    Gracias

  9. Ariel
    Comentado 26 de Enero de 2009 a las 1:46 PM | Permalink | Responder ↓

    Muy bueno!!. siempre he qerido hacer expresiones regulares, pero nunca me he dedicado a entenderlas.. XD

    Thank….

  10. Comentado 10 de Abril de 2009 a las 8:16 PM | Permalink | Responder ↓

    Muy utiles tus expresiones regulares, gracias!.

  11. Comentado 19 de Mayo de 2009 a las 12:53 PM | Permalink | Responder ↓

    muy bueno!!

  12. Derleth
    Comentado 29 de Junio de 2009 a las 8:21 PM | Permalink | Responder ↓

    esa E.R para validar un mail no esta bien hecha, ya q hay correos con puntos, guiones en medio y guines debajo

  13. Derleth
    Comentado 1 de Julio de 2009 a las 7:04 AM | Permalink | Responder ↓

    la e.r para validar el mail q se muestra arriba no tiene los filtros necesarios, por lo tanto estos tipos de correos los da como validos:
    yo@web_5.com
    yo@_._.algo
    yo@_._.algo.algo.algo.algo.algo.algo.algo.algo.algo.etc.etc.etc.etc.jaja

    al igual que la de “Buscar comentarios multi-línea”

    y en “Fechas” se filtran: 99/99/9999

Escribe un Comentario

Su correo nunca será publicado ni compartido. Los campos requeridos están marcados *

*
*

Comment moderation is enabled. Your comment may take some time to appear.

Trackbacks a este artículo: (URL del trackback)

  1. [...] Carlos Leopoldo – 8 expresiones regulares para PHP muy útiles [...]

  2. Por Expresiones regulares en PHP - elWebmaster.com en 2 de Julio de 2008 a las 10:10 AM

    [...] Fuente: Carlos Leopoldo [...]

  3. Por Las 10 expresiones regulares más usuadas en PHP en 17 de Noviembre de 2008 a las 9:18 PM

    [...] de las 8 expresiones muy útiles para PHP, en The Rough Guide to PHPencontré un listado de las expresiones regulares más usadas en PHP, [...]

Estudios Kurin - Técnicas de video y fotografía

La gente que ha leido este artículo buscó:

Expresiones regulares php, Expresiones regulares en php, Php expresiones regulares, Php expresion regular, Expresion regular php, Validar telefonos en php, Solucion de problemas con expresiones regulares, Expresion regular email php, Cuales son las expreesiones mas usadas en mexico?, Expresiones regulares, Validar expresiones regulares, Expresion regular direccion ip, Nombres expresiones regulares, Php expresion regular telefono, Validar telefono en php, Validar una fecha asp regular expression mm/dd/yyyy, Expresiones regulares validacion, Php:comprobar hora, Fechas en WEBSITE expresiones regulares, Expresiones regulares utiles php, Expresion regular Celular, Codigos utiles para php, Expresion regular comentario, Expresiones un comentario, Verificar string alfanumerico asp, Expresion regular para el email, Validar email php expresiones regulares, Validar telefono con expresión regular, Validar con expresiones regulares, Expresion de validacion de numero de telefono de mexico, Expresiones regulares en php cuenta de correo electronico, Expresion regular validar nombres, Php quitar comentarios css, Ayuda con las expresiones de carlos, Expresion regular string, 8 codigos utiles php, Comprobar expresion regular, Como hacer expresiones regulares en php, Validar en php expresiones regulares, Validar codigo postal en PHP, Expresion regular validar formato de fecha YYYY-MM-DD, Php expresion regular mail, Codigo expresiones regulares en php para paginas web, Expresion regular par verificar mail, Validar nombres php, Validar telefono expresiones regulares, Ejemplo expresiones regulares php, Google expresiones regulares para comprobar nros de tarjeta de credito, Php validar alfanumericos, Validar texto php expresion regular, , Hackear Facebook, Trucos Facebook, Desbloquear iPhone, Liberar iPhone