Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: samur88 en 6 Febrero 2012, 14:50 pm



Título: Problema con expresión regular PCRE
Publicado por: samur88 en 6 Febrero 2012, 14:50 pm
Hola buenas, a ver si podéis echarme una mano con el siguiente problema que tengo:

Estoy usando expresiones regulares PCRE para validar un correo:
En la primera parte antes de la arroba, necesito hacer lo siguiente y no se como hacerlo, quiero que el máximo número de caracteres de la parte local del correo (antes de la arroba) sean 63 como máximos, 1 como mínimo, pero quiero que esos 63 caracteres, sean letras, empiecen por letras, terminen por letras, y entre medios pueda llevar un símbolo de los especificados en la clase carácter pero no dos símbolos juntos.

Dejo el código a continuación:
Código
  1. $test = preg_match('/^[\w+(\_\-\.\+)?\w+]{1,63}\@{1}(\w+[\.\-]?\w+)+\.{1}[a-z]{2,4}$/','holaacvcv3@bba-sfd-dfd.com');
  2.  
La parte a tocar del patrón sería la que se encuentra antes de la arroba, es decir:

Código
  1. [\w+(\_\-\.\+)?\w+]{1,63}

Eso no me funciona, ya que me valida cuando hay dos signos juntos.

Un saludo y gracias por todo.


Título: Re: Problema con expresión regular PCRE
Publicado por: dark_sargon en 7 Febrero 2012, 05:08 am
Busca acerca de éste cuantificador:
Código:
?


Título: Re: Problema con expresión regular PCRE
Publicado por: samur88 en 8 Febrero 2012, 17:34 pm
Gracias, aunque ya conozco los cuantificadores y ese en especial, creo que lo tengo, pero no estoy seguro de si es correcta la expresión o no.

Un saludo.