Está en la página 1de 6

EXPRESIONES REGULARES

José Gustavo Zimbron Lara

Ricardo Alejandro Cruz Rodríguez

LENGUAJES AUTOMATAS

DR. LAURA HERNANDEZ


HERNANDEZ
2.1 DEFINICIÓN FORMAL DE UNA ER
(EXPRESIÓN REGULAR)
Es un equivalente algebraico para un autómata. Utilizado en muchos
lugares como un lenguaje para describir patrones en texto que son
sencillos pero muy útiles. Pueden definir exactamente los mismos
lenguajes que los autómatas pueden describir

las expresiones regulares se construyen utilizando los


operadores unión, concatenación. Además cada expresión regular tiene
un autómata finito asociado.
2.2 DISEÑO DE ER
Las diferentes operaciones sobre los idiomas
disponibles son:

Unión de dos idiomas L y M se escribe como


L U M = {s | s en L o s es en M}
La concatenación de dos lenguajes L y M se escribe como
LM = {st | s es en L y t se encuentra en M}
La clausura de Kleene un lenguaje L es escrito como
L* = cero o más apariciones del lenguaje L.
CARACTERÍSTICAS
Alternación
Una barra vertical separa las alternativas. Por ejemplo, "marrón|castaño" se corresponde
con marrón o castaño.
Cuantificación
Un cuantificador tras un carácter especifica la frecuencia con la que éste puede ocurrir. Los
cuantificadores más comunes son +, ? y *:
+
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 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 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.
$
El signo de pesos indica el final de una línea.
^
El signo de exponencial indica el comienzo de una línea.
[]
Agrupa caracteres en grupos o clases.
Agrupación
Los paréntesis pueden usarse para definir el ámbito y precedencia de los demás operadores.
Por ejemplo, "(p|m)adre" es lo mismo que "padre|madre", y "(des)?amor" se corresponde
con amor y con desamor.
{}
Encuentra coincidencia si hay exactamente n apariciones del carácter que precede.
2.3 APLICACIONES EN PROBLEMAS
REALES.
Una de las principales aplicaciones de los hermanos
Deitel, son las expresiones regulares que facilitan la
construcción de un compilador. A menudo se utiliza
una expresión regular larga y compleja para validar
la sintaxis de un programa. Si el código del programa
no concuerda con la expresión regular, el compilador
sabe que hay un error de sintaxis dentro del código.
Generalmente convierten la expresión regular a un
autómata finito no determinista y después construyen
el autómata finito determinista.
Otra aplicación del mismo libro es en los editores de
texto. También encontramos a las expresiones
regulares en la biología molecular. También hay
esfuerzos importantes para tratar de representar
cadenas como generadas por expresiones regulares o
por lenguajes regulares.

También podría gustarte