Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/08/2010, 22:14
ernewston
 
Fecha de Ingreso: julio-2009
Mensajes: 58
Antigüedad: 14 años, 9 meses
Puntos: 0
Regular expressions en php y javascript

He estudiado hace dias los regular expression pero aun no logro lo que quiero.
Tengo un codigo en javascript y otro en php, los que me dicen si una cadena es valida, una direccion de email por ejemplo.

Si buscamos por internet encontramos algunas regex populares, como el RFC2822 Email Validation:
/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/g

este regex me funciona perfecto en javascript:

Código:
if (email.value.match(/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/))
			{
				text.innerHTML = 'OK';;
			}

pero en php no le encontre la vuelta:

Código PHP:
if(preg_match_all("/[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/"$str$result))
    {return 
true;}else{return false;} 

Este tema me esta estresando ya, necesito que en los dos lenguajes tengan logicamente el mismo resultado, pero no lo logro. Ademas tengo como 5 problemas como este.

Un regular expression no deberia ser una forma logica y universal de expresar un patron de busqueda?? Se tendria que poder usar en todos los leguajes por igual! Eso falicitaria mucho las cosas...

Muchas gracias y espero que me puedan ayudar.