Ver Mensaje Individual
  #14 (permalink)  
Antiguo 03/07/2013, 09:42
Avatar de pateketrueke
pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: expresion regular

No es difícil, aunque sigo pensado que es innecesario.

Código PHP:
Ver original
  1. $test = range(0, 99);
  2. $regex = '/^(?:[3-4][0-9]|2[5-9]|5[0-5])$/';
  3.  
  4. foreach ($test as $num) {
  5.     if (preg_match($regex, $num)) {
  6.         echo "=> $num PASS!\n";
  7.     }
  8. }

La clave está en declarar varios tipos de rangos, ya que uno sólo no puede abarcar diferentes números a la vez.

Es decir, el primer rango a discriminar es un rango finito, del 30 al 49, debido a que el 25 y 55 son truncos y no pueden incluirse en dicho rango.

[3-4][0-9]

El segundo rango debe cubrir aquellos números mayores o iguales a 25, pero debajo del primer rango citado.

2[5-9]

El último rango cubre el restante de posibilidades, aquellos números menores o iguales a 55, pero fuera de los rangos iniciales.

5[0-5]

Finalmente se debe agrupar todo usando el operador OR (pipe o barra), para que compruebe todos los casos.

Imposible no es.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.