Foros del Web » Programando para Internet » PHP »

Sobre expresiones regulares

Estas en el tema de Sobre expresiones regulares en el foro de PHP en Foros del Web. Código PHP: <? $variable = 'ne' ; if ( preg_match ( '#^[\*%]+$#' ,  trim ( $variable )) ||  preg_match ( '#^[^\*]{1,2}$#' ,  str_replace (array( '*' ,  '%' ...
  #1 (permalink)  
Antiguo 27/04/2005, 12:10
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 15 años, 9 meses
Puntos: 54
Sobre expresiones regulares

Código PHP:
<?
$variable
='ne';
if (
preg_match('#^[\*%]+$#'trim($variable)) || preg_match('#^[^\*]{1,2}$#'str_replace(array('*''%'), ''trim($variable))))
{
echo 
"No válido";
exit;
}
echo 
"Válido";
?>
¿Alguien me puede decir por qué esa expresión regular me invalida las $variable que constan de dos letras (por ejemplo 'ne', 'as', 'zh')? ¿Qué puedo hacer para que las valide?

Un saludo
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #2 (permalink)  
Antiguo 27/04/2005, 13:29
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
la cadena que dice {1,2} dentro de la expresion regular, esta limitando entre 1 y 2 carácteres, cambia ese rango.

saludos
  #3 (permalink)  
Antiguo 28/04/2005, 07:47
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 15 años, 9 meses
Puntos: 54
Perfecto, gracias
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:57.