Foros del Web » Programando para Internet » PHP »

expresion regular multiidioma

Estas en el tema de expresion regular multiidioma en el foro de PHP en Foros del Web. Buenos dias a todos. Estoy intentando construir una expresion regular para validar nombres y apellidos de las personas. Tiene que aceptar solo letras y espacios. ...
  #1 (permalink)  
Antiguo 06/11/2012, 09:54
 
Fecha de Ingreso: junio-2008
Mensajes: 42
Antigüedad: 16 años, 4 meses
Puntos: 3
expresion regular multiidioma

Buenos dias a todos.
Estoy intentando construir una expresion regular para validar nombres y apellidos de las personas. Tiene que aceptar solo letras y espacios.
Yo tengo esta que no funciona /^(\w\s?)+$/. Funcionar funciona pero solo para ingles.
Yo tengo sait en 4 idiomas (castellano, catalan, ruso y ingles) de momento y necesito una expresion regular que me acepte solo letras y espacios en cualquier idioma. Ya se que puedo poner dentro de expresion todas las letras acentadas de catalan, castellano (ademas hay que incluir mayusculas y minusculas), las ñ, ya no digo de alfabeto ruso. Pero no creo que es unico camino posible.
El site es en utf-8. Alguien ha tenido que hacer algo parecido?
Gracias a todos por adelantado.
  #2 (permalink)  
Antiguo 06/11/2012, 09:57
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: expresion regular multiidioma

Consulta una referencia de expresiones regulares, no necesitas especificar todo el rango de caracteres posible sino mas bien un marcador de conjunto.

Para caracteres en latín, que incluyen acentos, eñes, etc. es así: \pL

Pero no es así para todos los conjuntos, así que debes reescribir tu expresión para que acepte todos los posibles conjuntos.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 06/11/2012, 09:59
 
Fecha de Ingreso: junio-2008
Mensajes: 42
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: expresion regular multiidioma

Gracias! Voy a investigar. Quizas es lo que busco.
  #4 (permalink)  
Antiguo 07/11/2012, 10:12
 
Fecha de Ingreso: junio-2008
Mensajes: 42
Antigüedad: 16 años, 4 meses
Puntos: 3
Respuesta: expresion regular multiidioma

Finalmente he encontrado la solucion final para validar los nombres y apellidos de ingles, latino y ruso.
Adjunto aqui el patron por si interesa a alguien

/^[a-zA-Z\p{Cyrillic}\p{Latin}\s?]{2, 100}$/u

Gracias!
Un cordial saludo, Victoria

Etiquetas: expresion, multiidioma, regular
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

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 08:45.