Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Shell Root en 21 Marzo 2011, 20:07 pm



Título: Hay algún problema al usar...
Publicado por: Shell Root en 21 Marzo 2011, 20:07 pm
Hay algún tipo de problema al usar una función como la siguiente. Me refiero a las ExpReg.
Código
  1.   $sExpReg = '';
  2.  
  3.   if( $sType == "CHAR" ){ $sExpReg = "/^[a-z]+$/i"; }         # CHAR = String
  4.   elseif( $sType == "NUM" ){ $sExpReg = "/^[[:digit:]]+$/"; } # NUM  = Numbers
  5.   elseif( $sType == "ALL" ){ $sExpReg = "/^[[:alnum:]]+$/"; } # ALL  = String and Numbers
  6.   else{ return 0; }
  7.  
  8.   if( @preg_match( $sExpReg, $sString ) ){ return $sString; }
  9. }


Título: Re: Hay algún problema al usar...
Publicado por: ~ Yoya ~ en 21 Marzo 2011, 21:05 pm
Yo no veo ningún problema, la probé y todo anda bien.

Pd: Te recomiendo que no utilices patrones de Posix aunque son compatible con Perl.


Título: Re: Hay algún problema al usar...
Publicado por: Nakp en 21 Marzo 2011, 22:04 pm
la string no incluye caracteres especiales ni espacios... por que no usas las funciones is_string/is_numeric?


Título: Re: Hay algún problema al usar...
Publicado por: Shell Root en 21 Marzo 2011, 22:11 pm
Si agregará la ñ, lo tomaría como carácter especial?


Título: Re: Hay algún problema al usar...
Publicado por: ~ Yoya ~ en 21 Marzo 2011, 22:56 pm
Pasa que la ñ no es parte del alfabeto según el locale que tienes establecido.