Foros del Web » Programando para Internet » Javascript »

error: regular expression too complex

Estas en el tema de error: regular expression too complex en el foro de Javascript en Foros del Web. "error: regular expression too complex " Me sale ese error cuando corro la pagina desde Firefox, pero cuando la corro en IE9 funciona bien. Es ...
  #1 (permalink)  
Antiguo 06/07/2011, 08:37
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Información error: regular expression too complex

"error: regular expression too complex"
Me sale ese error cuando corro la pagina desde Firefox, pero cuando la corro en IE9 funciona bien.
Es una funcion que controla que los datos ingresados en un <input> se correspondan con un correo electronico. Este es el codigo:

FUNCION JS:
Código:
function funcionControl(){
    var $mail = window.document.formContactos.mail.value;
    var $expReg2 = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9azA-Z]\.)+[a-zA-Z]{2,9})$/;
    var $esCorreo = $expReg2.test($mail);
    if(!$esCorreo){
        arrayControl['mail']='false';
    }
}
CODIGO HTML:
Código:
<form name="formContactos" id="formContacto" action="moduloEnviarCorreo.php" method="post">
<!--Campo Correo-e-->
<table id="email" name="email">
	<tr><td class="label">Correo-e:<sup style="color:red">*</sup></td></tr>
	<tr><td><input name="mail" id="mail" type="text" class="textBox" style="width:220px"></td></tr>
</table>
La funcion se llama desde el evento onclick del submit.

Lei por ahi alquien mas que tuvo el mismo problema con firefox pero que en Chrome le corria bien. Alguien tiene idea porque este error, mejor dicho, porque en firefox.
Salu2
  #2 (permalink)  
Antiguo 06/07/2011, 11:46
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: error: regular expression too complex

buenas,
hice las pruebas en firefox4.01 y chrome -deje a un lado iexplorer8-, y la verdad no obtengo el mismo error que tu. no obstante, dejando a un lado si la expresión es la mas adecuada o no, veo que tienes algunos posibles errores, todos marcados en rojo.

Código:
/^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9azA-Z]\.)+[a-zA-Z]{2,9})$/;
el primero y segundo, notese que el guión es un caracter especial dentro una clase (par de corchete). en el tercero, supongo que quisistes escribir a-z.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 06/07/2011, 14:10
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 13 años
Puntos: 0
Respuesta: error: regular expression too complex

Muy buena la observacion zerokilled, muchas gracias! Ya esta corregido.

Al final el problema lo tenia en unas sentencias de jQuery. No me preguntes que era lo que afectaba, pero modifique la logica de esa parte del codigo y ahora funciona bien en los dos navegadores.

Etiquetas: complex
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 21:59.