• Viernes 8 de Noviembre de 2024, 19:22

Autor Tema:  Expresion Regular  (Leído 3739 veces)

franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Expresion Regular
« en: Jueves 28 de Junio de 2007, 09:52 »
0
Hola, estoy intentando hacer una expresion regular ( o varias seguidas... ) para validar los nuevos dominios IDN ( los que pueden tener ñ... letras con acentos... l·l geminada... etc. ) y me estoy volviendo loco.

¿ Por casualidad alguno de vosotros tiene algo de codigo escrito sobre esto ? O quizas se os den bien las expresiones regulares y me podeis echar un cable.


Objetivo:


Los dominios IDN permiten caracteres multilingües:

. ñ

. á

. àé

. è í

. ï ó

. ò ú

. ü

. ñ

. ç

. l•l (ele geminada del idioma catalán y valenciano)

 

Como hasta la fecha, los dominios .es deberán tener un mínimo de 3 caracteres y un máximo de 63 pudiendo componerse por letras, números (0-9) y guión medio (-).

El primer y último carácter del nombre de dominio no podrá ser un guión medio (-).

No podrán empezar por “xn--“  debido a que xn-- es el prefijo que indica que el dominio en cuestión se trata de un dominio multilingüe.





Gracias !!!!!!

Kyrylys

  • Miembro activo
  • **
  • Mensajes: 80
    • Ver Perfil
Re: Expresion Regular
« Respuesta #1 en: Jueves 28 de Junio de 2007, 10:42 »
0
puff yo de expresiones regulares no se mucho, pero la que uso es la siguiente

Código: Text
  1. var reg= new RegExp ("^([a-zA-Z0-9_'+*$%\^&!\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9:]{2,4})+$");
  2.  

usala como base, sólo tienes que implementar

Citar
El primer y último carácter del nombre de dominio no podrá ser un guión medio (-).

No podrán empezar por “xn--“ debido a que xn-- es el prefijo que indica que el dominio en cuestión se trata de un dominio multilingüe.

acabo de ver que en el rango a-z no está incluida la ñ (yo pensaba que si)
tal vez haya que definir un charset dentro de la funcion que valide el email o coger el string descomponerlo en ascii y validar el ascii.

Siento no poder ser de más ayuda


franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Re: Expresion Regular
« Respuesta #2 en: Jueves 28 de Junio de 2007, 11:15 »
0
Gracias Kyrylys,

Mi otra idea era descomponer en ascii por el tema de la L geminada... pero ¿ cual es el ascii de esta letra ? Sabes de alguna URL donde esté el ascii completo ?

Gracias !

franc

  • Miembro MUY activo
  • ***
  • Mensajes: 157
    • Ver Perfil
Re: Expresion Regular
« Respuesta #3 en: Lunes 2 de Julio de 2007, 17:03 »
0
Ya he conseguido hacer la expresion segular. Gracias por la ayuda.

Un saludo,

xabi81

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Expresion Regular
« Respuesta #4 en: Viernes 19 de Octubre de 2007, 09:59 »
0
Cita de: "franc"
Ya he conseguido hacer la expresion segular. Gracias por la ayuda.

Un saludo,
Hola,

serías tan amable de postearla por favor o enviarmela x mail, me estoy volviendo loco para hacer una con la l·l.

Muchas gracias.

xabi81

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Expresion Regular
« Respuesta #5 en: Viernes 19 de Octubre de 2007, 14:20 »
0
Me respondo a mi mismo, que después de mucho intentar...seguro que a más de uno le viene bien.

^([\w-áéíóúàèòüïñÇ]*(l·l)*)+(?:\.[\w-áéíóúàèòüïñÇ]*(l·l)*)*@xxxxxxxxx.xx$