Ver Mensaje Individual
  #7 (permalink)  
Antiguo 27/03/2013, 10:37
Avatar de catpaw
catpaw
 
Fecha de Ingreso: mayo-2010
Ubicación: xalapa
Mensajes: 856
Antigüedad: 14 años
Puntos: 23
Respuesta: expresion regular acepte numeros y letras o solo numeros pero no solo letr

PErdon no habia visto lo de usar el preg_match

mira hice unas pruebas y no concigo que salga correctamente:

Código PHP:
Ver original
  1. $cadena_n = "12345";
  2. $cadena_l = "abcde";
  3. $cadena_2 = "1a3bc";
  4.  
  5. if(preg_match("/^[0-9]+$/", $cadena_n) || preg_match("/^[0-9a-zA-Z]+$/", $cadena_n)){
  6.     echo "si contiene letras y/o numeros. $cadena_n <br />";
  7. } else{
  8.     echo "no contiene letras y/o numeros. $cadena_n <br />";
  9. }
  10.  
  11. if(preg_match("/^[0-9]+$/", $cadena_l) || preg_match("/^[0-9a-zA-Z]+$/", $cadena_l)){
  12.     echo "si contiene letras y/o numeros. $cadena_l <br />";
  13. } else{
  14.     echo "no contiene letras y/o numeros. $cadena_l <br />";
  15. }
  16.  
  17. if(preg_match("/^[0-9]+$/", $cadena_2) || preg_match("/^[0-9a-zA-Z]+$/", $cadena_2)){
  18.     echo "si contiene letras y/o numeros. $cadena_2 <br />";
  19. } else{
  20.     echo "no contiene letras y/o numeros. $cadena_2 <br />";
  21. }

el resultado es:

si contiene letras y/o numeros. 12345
si contiene letras y/o numeros. abcde
si contiene letras y/o numeros. 1a3bc

si cambio || por &&, el resultado es:

si contiene letras y/o numeros. 12345
no contiene letras y/o numeros. abcde
no contiene letras y/o numeros. 1a3bc

EDITO: Vaya! parece que casi contestamos al mismo tiempo,

Cita:
Puedes hacer algo así y no necesitas sino una condición:


Código PHP: Ver original0.$regex = '#^[a-z]*[0-9][a-z0-9]*$#i';0. 0.var_dump(preg_match($regex, 'ABCDE'));0.var_dump(preg_match($regex, '1A23B'));0.var_dump(preg_match($regex, '12345'));0.var_dump(preg_match($regex, 'andres'));0.var_dump(preg_match($regex, 'andres1'));
PD: var_dump es a modo de ejemplo y la función ereg es obsoleta.

Saludos.
Acabo de ver tu respuesta justo cuando mande la mia, gracias por tu ayuda, pruebo lo que me propones y comento sale!!