Ver Mensaje Individual
  #6 (permalink)  
Antiguo 24/08/2011, 10:16
Avatar de pateketrueke
pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: mes y dia y expressiones regulares

Lo que sucede es lo siguiente:
Cita:
/[1-31]/
/[1-12]/
/[1920-1993]/
Estas expresiones no funcionan como imaginas, los rangos solo consisten de dos caracteres: [a-z], [0-9] etc... cualquier otro carácter no se considera para el rango.

En la primer expresión: /[1-31]/ lo único que está validando es la presencia de algún numero del 1 al 3, pues el último 1 ya está declarado.

Mira un ejemplo claro de lo que hace:
Código PHP:
echo preg_match('/^[1900-2000]$/'1912) ? : -1
Esto siempre te va a dar -1 aunque creas que 1912 está dentro del rango [1900-2000], pero sigue habiendo un error, y si hacemos esto:
Código PHP:
echo preg_match('/[1900-2000]/'99) ? : -1
Nos dará siempre 1, y así:
Código PHP:
echo preg_match('/[1900-2000]/'88) ? : -1
Nos dará -1 pues el 8 no esta dentro del rango, en resumen, la expresión [1920-1933] considerará solo los números 1,9,2,0-1(rango),9,3,3 y no de otra forma.

Espero que te quede claro cual es tu error.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.