Professional Documents
Culture Documents
? El signo de interrogación indica que el carácter que le precede puede aparecer como
mucho una vez. Por ejemplo, "ob?scuro" se corresponde con oscuro y obscuro.
+ El signo más indica que el carácter que le precede debe aparecer al menos una vez.
Por ejemplo, "ho+la" describe el conjunto infinito hola, hoola, hooola, hoooola,
etcétera.
* El asterisco indica que el carácter que le precede puede aparecer cero, una, o más
veces. Por ejemplo, "0*42" se corresponde con 42, 042, 0042, 00042, etcétera.
Por ejemplo, el grupo formado por las cadenas Handel, Händel y Haendel se describe con el
patrón "H(a|ä|ae)ndel".
Los constructores pueden combinarse libremente dentro de la misma expresión, por lo que
"H(ae?|ä)ndel" equivale a "H(a|ae|ä)ndel".
El signo de admiración “ ! ”
Se utiliza para realizar una "búsqueda anticipada negativa". La construcción de la
expresión regular es con el par de paréntesis, el paréntesis de apertura seguida de un
signo de interrogación y un signo de exclamación. Dentro de la búsqueda tenemos la
expresión regular. Por ejemplo, para excluir exactamente una palabra, habrá que
utilizar "^(palabra.+|(?!palabra).*)$"
Los corchetes “ [ ] ”
La función de los corchetes en el lenguaje de las expresiones regulares es representar
"clases de caracteres", es decir, agrupar caracteres en grupos o clases. Son útiles
cuando es necesario buscar uno de un grupo de caracteres. Dentro de los corchetes es
posible utilizar el guion "-" para especificar rangos de caracteres. Adicionalmente,
los metacaracteres pierden su significado y se convierten en literales cuando se
encuentran dentro de los corchetes.
Los corchetes nos permiten también encontrar palabras aun si están escritas de forma
errónea, por ejemplo, la expresión regular "expresi[oó]n" permite encontrar en un
texto la palabra "expresión" aunque se haya escrito con o sin tilde. Es necesario
aclarar que sin importar cuantos caracteres se introduzcan dentro del grupo por medio
de los corchetes, el grupo sólo le dice al motor de búsqueda que encuentre un solo
carácter a la vez, es decir, que "expresi[oó]n" encontrará "expresion" o "expresión".
La barra “ | ”
Sirve para indicar una de varias opciones. Por ejemplo, la expresión regular "a|e"
encontrará cualquier "a" o "e" dentro del texto. La expresión regular
"este|oeste|norte|sur" permitirá encontrar cualquiera de los nombres de los puntos
cardinales. La barra se utiliza comúnmente en conjunto con otros caracteres
especiales.
El signo de dólar “ $ ”
Representa el final de la cadena de caracteres o el final de la línea, si se utiliza el
modo multi-línea. No representa un carácter en especial sino una posición. Si se
utiliza la expresión regular "\.$" el motor encontrará todos los lugares donde un punto
finalice la línea, lo que es útil para avanzar entre párrafos.
El acento circunflejo “ ^ ”
Este carácter tiene una doble funcionalidad, que difiere cuando se utiliza
individualmente y cuando se utiliza en conjunto con otros caracteres especiales. En
primer lugar su funcionalidad como carácter individual: representa el inicio de la
cadena (de la misma forma que el signo de dólar "$" representa el final de la cadena).
Por tanto, si se utiliza la expresión regular "^[a-z]" el motor encontrará todos los
párrafos que den inicio con una letra minúscula. Cuando se utiliza en conjunto con
los corchetes de la siguiente forma "[^\w ]" permite encontrar cualquier carácter que
NO se encuentre dentro del grupo indicado.
Las llaves “ { } ”
El asterisco sirve para encontrar algo que se encuentra repetido 0 o más veces. Por
ejemplo, utilizando la expresión "[a-zA-Z]\d*" será posible encontrar tanto "H" como
"H1", "H01", "H100" y "H1000", es decir, una letra seguida de un número indefinido
de dígitos.
Aplicaciones
La aplicación mas más obvia es la de describir un conjunto de cadenas para una determinada
función, resultando de utilidad en editores de texto y otras aplicaciones informáticas para
buscar y manipular textos. Numerosos editores de texto y otras herramientas utilizan
expresiones regulares para buscar y reemplazar patrones en un texto. Inicialmente, este
reconocimiento de cadenas se programaba para cada aplicación sin mecanismo alguno
inherente al lenguaje de programación pero, con el tiempo, se ha ido incorporado el uso de
expresiones regulares para facilitar programar la detección de ciertas cadenas.
Observaciones y Comentarios
Una expresión regular usa caracteres y metacaracteres para definir, de forma abierta, patrones
concretos en cadenas de texto. Esos caracteres, combinados unos con otros de forma especial,
permiten extraer patrones o elementos concretos de esa cadena para buscar o manipular el
texto (identificadores, correos electrónicos…).
Conclusiones
Las expresiones regulares permiten filtrar textos para encontrar coincidencias,
comprobar la validez de fechas, documentos de identidad o contraseñas, se pueden
utilizar para reemplazar texto con unas características concretas por otro, y muchos
más usos.
Las expresiones regulares están disponibles en casi cualquier lenguaje de
programación, pero, aunque su sintaxis es relativamente uniforme, cada lenguaje usa
su propio dialecto.
Las expresiones regulares pueden definirse como una serie de caracteres que forman
un patrón, normalmente representativo de otro grupo de caracteres mayor, de tal
forma que podemos comparar el patrón con otro conjunto de caracteres para ver las
coincidencias.
Las expresiones regulares no son exclusivas de javascript, las usan también otros
lenguajes de programación, de hecho, javascript las ha importado de ellos.
Bibliografía
Lebubic 2 abr. 2018 . MDN Web Docs. Expresiones Regulares. 02 de agosto de
2018. Consultado en:
https://developer.mozilla.org/es/docs/Web/JavaScript/Guide/Regular_Expressions
Ruslan Mitkov (2003). The Oxford Handbook of Computational Linguistics. Oxford
University Press. p. 754.
Mark V. Lawson (17 de septiembre de 2003). Finite Automata. CRC Press. pp. 98-
100.