Uno de los problemas con los que nos podemos encontrar a la hora de validar nombres mediante el uso de expresiones regulares son los acentos. Debido a que las expresiones regulares nacieron pensando únicamente para trabajar en inglés. Generalmente para validar las cadenas que contienen letras se usa el patrón a-zA-Z, pero éste ignora los acentos y otros caracteres, como ç, que sí existen en otros idiomas. Veamos cómo podemos identificar y validar palabras con acentos mediante expresiones regulares.
Para identificar los acentos en una cadena de texto se puede usar el estándar Unicode. En este estándar los caracteres acentuados que se emplean en los idiomas latinos se pueden encontrar en el rango \u00C0-\u017F. Así si se incluyen estos valores en la expresión regular se pueden conseguir validar nombres con acentos. Así se puede validar nombres latinos que contengan acentos u otros caracteres, algo que se puede ver en el siguiente ejemplo.
const name = "Champiñón" console.log(/^[a-zA-Z]+$/.test(name)) // false console.log(/^[a-zA-Z\u00C0-\u017F]+$/.test(name)) // true
donde se puede ver que la palabra champiñón no sería válida en el primer caso y sí en el segundo.
En el caso de necesitar que también se tengan en cuenta los estaciones en blanco se puede conseguir añadiendo simplemente \s a la cadena. Funcionamiento que se pueden comprobar en el siguiente ejemplo.
const name = "Champiñón común" console.log(/^[a-zA-Z]+$/.test(name)) // false console.log(/^[a-zA-Z\u00C0-\u017F]+$/.test(name)) // false console.log(/^[a-zA-Z\u00C0-\u017F\s]+$/.test(name)) // false
En esta entrada hemos visto cómo validar palabras con acentos mediante expresiones regulares, para lo que hemos necesitado usar el estándar Unicode.
Imagen de Theodor Moise en Pixabay
En las cuatro entregas anteriores recorrimos los disparates más folclóricos del género: faldas que predicen…
En Analytics Lane seguimos evolucionando nuestras herramientas y damos un paso más con el lanzamiento…
Cuando hablamos de clustering, lo primero que viene a la mente suele ser k-means. Pero…
Cualquier país desarrollado tiene sus propios indicadores folclóricos. España, por motivos que tienen mucho que…
Entras a la web de tu banco. En la página principal, un banner llamativo: “Depósito…
Seguimos ampliando el laboratorio de Analytics Lane con el lanzamiento de la versión 1.3, disponible…
This website uses cookies.