S03.s1 - Material.pdf
TEORIA DE LENGUAJES
DE PROGRAMACION
Expresiones y Lenguajes regulares
This material has been prepared by Richard E. Aguilar P.
Contenido de la Sesión
• Lenguajes regulares.
• Expresiones regulares.
• Extensiones de las expresiones regulares.
• Operaciones con expresiones regulares.
S03.s1 - Material.pdf
This material has been prepared by Richard E. Aguilar P.
Logro
Al finalizar la sesión el alumno comprende qué son los lenguajes
regulares y las expresiones regulares que los definen, así como
las principales operaciones que pueden ejecutarse sobre
dichas expresiones.
S03.s1 - Material.pdf
This material has been prepared by Richard E. Aguilar P.
Lenguajes regulares
• Es un lenguaje generado por una gramática regular y descrito por una
expresión regular.
• Lo anterior quiere decir, que las expresiones regulares son un meta
lenguaje para describir los lenguajes regulares.
• El conjunto de cadenas generados por una expresión regular se
denomina lenguaje regular o lenguaje generado por una expresión
regular y se escribe como L(r) donde r es una expresión regular.
This material has been prepared by Richard E. Aguilar P.
Lenguajes regulares
• Los lenguajes regulares sobre un alfabeto dado Σ son todos los
lenguajes que se pueden formar a partir de los lenguajes básicos Φ, {λ},
{a}, a ϵ Σ, por medio de operaciones de unión, concatenación y estrella
de Kleene.
• Sea Σ un alfabeto, entonces Φ, {λ} y {a}, para cada a ϵ Σ, son lenguajes
regulares sobre Σ. Estos son los denominados lenguajes reglares básicos.
• Si A y B son lenguajes regulares sobre Σ, también lo son:
▪ A U B (unión)
▪ AB (concatenación)
▪ A* (estrella de Kleene)
This material has been prepared by Richard E. Aguilar P.
Expresión regular
• Las expresiones regulares representan patrones de cadenas de
caracteres.
• Una expresión regular r se encuentra completamente definida
mediante el conjunto de cadenas con las que concuerda.
• Una expresión regular r también contendrá caracteres del
alfabeto, pero esos caracteres tendrán un significado diferente:
en una expresión regular todos los símbolos indican patrones.
• Una expresión regular r puede contener caracteres que tengan
significados especiales denominados metacaracteres.
This material has been prepared by Richard E. Aguilar P.
Expresión regular
• Las expresiones regulares representan lenguajes regulares y
su propósito es simplificar la escritura de los lenguajes
regulares.
• La siguiente es la definición recursiva de las expresiones
regulares sobre su alfabeto Σ dado.
1. Expresiones regulares básicas:
• Φ es una expresión regular que representa al lenguaje Φ
• λ es una expresión regular que representa al lenguaje {λ}
• a es una expresión regular que representa al lenguaje {a}, a ϵ Σ
2. Si R y S son expresiones regulares sobre Σ, también lo son: R|S, RS y R*
This material has been prepared by Richard E. Aguilar P.
Expresiones regulares básicas
• Las expresiones regulares básicas son precisamente los caracteres
simples del alfabeto, los cuales se corresponden a si mismos.
• Dado cualquier caracter a del alfabeto Σ, indicamos que la expresión
regular a corresponde al caracter a escribiendo: L(a) = {a}
• Necesitamos definir la cadena vacía, es decir la cadena que no
contiene ningún carácter, para ello escribimos: L(λ) = {λ}
• Definimos también un símbolo que corresponda a la ausencia de
cadenas, es decir cuyo lenguaje sea el conjunto vacío, para ello
escribimos: L(Φ) = { }
This material has been prepared by Richard E. Aguilar P.
Operaciones de expresiones
regulares
• Existen tres operaciones básicas en las expresiones regulares:
• Selección entre alternativas, la cual se indica con el metacaracter |
• Concatenación, que se indica mediante yuxtaposición, sin utilizar un
metacaracter.
• Repetición o “cerradura”, la cual se indica mediante el
metacaracter *
This material has been prepared by Richard E. Aguilar P.
Selección entre alternativas
• Si r y s son expresiones regulares, entonces r|s es una
expresión regular que define a cualquier cadena que
concuerda con r o con s.
• En términos de lenguajes, el lenguaje de r|s es la unión de los
lenguajes de r y s, es decir: L(r|s) = L(r) U L(s)
This material has been prepared by Richard E. Aguilar P.
Concatenación
• La concatenación de dos expresiones regulares r y s se escribe
como rs y corresponde a cualquier cadena que sea la
concatenación de dos cadenas, con la primera de ellas
correspondiendo a r y la segunda correspondiendo a s.
• Podemos el efecto de la concatenación en términos de lenguajes
generados al definir la concatenación de dos conjuntos de
cadenas S1 y S2, el conjunto concatenado S1S2 es el conjunto de
cadenas de S1 complementado con todas las cadenas de S2.
• En términos de lenguajes, la concatenación puede describirse
como sigue: L(rs) = L(r)L(s)
This material has been prepared by Richard E. Aguilar P.
Repetición
• La operación de repetición de una expresión regular,
denominada también en ocasiones cerradura (de Kleene),
se escribe como r*, donde r es una expresión regular.
• La expresión regular r* corresponde a cualquier
concatenación finita de cadenas, cada una de las cuales
corresponde a r.
• En términos de lenguajes, la repetición puede describirse
como sigue: L(r*) = L(r)*
This material has been prepared by Richard E. Aguilar P.
Precedencia de operaciones
• La convención estándar es que la repetición tiene la mayor
precedencia.
• La concatenación le sigue en precedencia a la repetición.
• La selección tiene la precedencia mas baja.
• Si deseamos indicar una precedencia diferente, entonces
debemos de utilizar paréntesis.
This material has been prepared by Richard E. Aguilar P.
Nombres para expresiones
regulares
• A menudo es útil como una forma de simplificar la notación
proporcionar un nombre para una expresión regular extensa.
De modo que no sea necesario escribir la expresión misma
cada vez que deseamos utilizarla.
• Por lo general esto es muy útil cuando definimos elementos
de un lenguaje de programación, por ejemplo cuando
deseamos definir a un numero entero compuesto de uno o
más dígitos numéricos.
This material has been prepared by Richard E. Aguilar P.
Extensiones para las expresiones
regulares
• Hemos definido las expresiones regulares con un conjunto
mínimo de operaciones y podríamos limitarnos solo a ellas.
• Sin embargo, el construir expresiones regulares utilizando solo
las operaciones básicas, en ocasiones es poco manejable,
ya que se crean expresiones regulares que son más
complicadas de lo que serian si se dispusiera de un conjunto
de operaciones más expresivo y por lo tanto más flexible.
This material has been prepared by Richard E. Aguilar P.
Una o más repeticiones
• Una situación típica que surge es la necesidad de una o más
repeticiones en lugar de ninguna (en cuyo caso utilizaríamos
r*), lo que garantiza que aparece por lo menor una cadena
correspondiente a r y no permite la cadena vacía λ
• Para esta situación utilizamos el metacaracter + tal como
sigue: r+
This material has been prepared by Richard E. Aguilar P.
Cualquier caracter
• Una situación común es la necesidad de generar cualquier
carácter en el alfabeto, de no contar con una operación
especial esto requerirá que todo carácter en el alfabeto sea
enumerado en una alternativa.
• Un metacaracter típico que se utiliza para expresar una
concordancia de cualquier carácter es el punto “.” el cual
no requiere que el alfabeto se escriba en forma extendida.
This material has been prepared by Richard E. Aguilar P.
Intervalo de caracteres
• A menudo necesitamos escribir un intervalo de caracteres, esto
pudiera hacerse mediante el uso del operador de selección, sin
embargo esto puede ser muy extenso.
• Una alternativa es tener una notación especial para esta
situación, y una que es muy común es la de emplear corchetes y
un guion, tal como sigue: [a-z] (para las letras minúsculas). Lo
mismo aplica a los intervalos múltiples.
• El uso de corchetes también se emplea para alternativas
individuales de modo que a|b|c puede expresarse como [abc]
This material has been prepared by Richard E. Aguilar P.
Cualquier carácter que no esté en
un conjunto dado
• A menudo es de utilidad excluir un carácter simple del
conjunto de caracteres por generar.
• Aunque existe la posibilidad de diseñar un metacaracter
para indicar la operación de negación o complementaria
sobre un conjunto de alternativas, es una opción mas simple
utilizar la notación tal como sigue: [^a] para indicar que a no
debe considerarse.
• También es posible indicar que no sea ninguno de varios
caracteres, para ello indicamos: [^abc]
This material has been prepared by Richard E. Aguilar P.
Subexpresiones opcionales
• Un suceso que se presenta comúnmente es el de cadenas
que contienen partes opcionales que pueden o no aparecer
en cualquier cadena en particular.
• Para ello se utiliza el metacaracter de signo de interrogación
“?”, con dicho metacaracter expresamos que la cadena es
opcional o lo que es lo mismo, que la cadena puede
aparecer cero o una vez.
• Por ejemplo un numero entero puede tener o no signo, lo
cual podemos expresar como: (+|-)?
S03.s1 - Material.pdf
This material has been prepared by Richard E. Aguilar P.
PREGUNTAS
S03.s1 - Material.pdf
This material has been prepared by Richard E. Aguilar P.
Resumiendo
• Un lenguaje regular es generado por una gramática
regular y descrito por una expresión regular.
• Las expresiones regulares representan patrones de
cadenas de caracteres.
S03.s1 - Material.pdf

Más contenido relacionado

PPTX
Equivalencia de autómatas finitos y expresiones regulares.
PPT
Expresiones regulares y gramaticas
PPTX
Expresiones regulares y gramáticas
PDF
Expresiones regulares y gramáticas
PPTX
Expresiones regulares y gramaticas
PDF
S02.s1 - Material.pdf
PPTX
Lenguajes regulares
PPTX
Gramática Libre de Contexto
Equivalencia de autómatas finitos y expresiones regulares.
Expresiones regulares y gramaticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramaticas
S02.s1 - Material.pdf
Lenguajes regulares
Gramática Libre de Contexto

La actualidad más candente (20)

PPTX
Lenguajes regulares
PDF
ESPRESIONES REGULARES
PDF
Gramaticas y lic
PPTX
Gramáticas formales1
PPTX
GRAMÁTICA LIBRE DE CONTEXTO
PPT
Jerarquia de chomsky
DOCX
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
PDF
Unidad 7 lenguajes gramaticas y automatas
PPTX
Representaciones estructurales
PPTX
1expo yeisland12
PPTX
Exposición de compiladores e intérpretes - Profesor: Eddie Malca
PPT
Cap5
PPT
Gramatica
PPT
Compiladores1
PDF
Logica
DOCX
Lenguajes libre de contexto
PDF
Portafolio Lenguajes y Autómatas Unidad 1
PPTX
Lenguajes formales
PPTX
Gramaticas
DOCX
Apuntes de lenguajes automatas
Lenguajes regulares
ESPRESIONES REGULARES
Gramaticas y lic
Gramáticas formales1
GRAMÁTICA LIBRE DE CONTEXTO
Jerarquia de chomsky
Conceptos Unidad 1 Lenguajes Automatas Introducción a la Teoría de Lenguaje...
Unidad 7 lenguajes gramaticas y automatas
Representaciones estructurales
1expo yeisland12
Exposición de compiladores e intérpretes - Profesor: Eddie Malca
Cap5
Gramatica
Compiladores1
Logica
Lenguajes libre de contexto
Portafolio Lenguajes y Autómatas Unidad 1
Lenguajes formales
Gramaticas
Apuntes de lenguajes automatas
Publicidad

Similar a S03.s1 - Material.pdf (20)

DOC
Expresiones regulares fin
PPTX
Expresiones regulares y gramáticas
PPTX
Expresiones regulares y grámaticas regulares ariel acosta
PPTX
Lenin herrera
PDF
Automatas y compiladores clase2
PPTX
Expresiones regularesfinal
PPTX
Sesión 4 y 5 LFP.pptx
PDF
tablas de verdades de la electrónica digital
PPTX
Expresiones Regulares de automatas .pptx
PDF
automatas y lenguajes, presentacion pdfh
PPTX
Expresiones regulares y gramáticas
PDF
Clase 05-expresiones-regulares
PPTX
lenguajes formales
DOCX
Tipos de lenguaje formal según Chomsky
PPTX
Compilador2
PPTX
Expresiones regulares2.pdf
PPT
Analisis Lexico
PPT
Analizador LÉxico
PDF
Lenguajes formales y teoría de autómatas I.pdf
PDF
Expresiones regulares
Expresiones regulares fin
Expresiones regulares y gramáticas
Expresiones regulares y grámaticas regulares ariel acosta
Lenin herrera
Automatas y compiladores clase2
Expresiones regularesfinal
Sesión 4 y 5 LFP.pptx
tablas de verdades de la electrónica digital
Expresiones Regulares de automatas .pptx
automatas y lenguajes, presentacion pdfh
Expresiones regulares y gramáticas
Clase 05-expresiones-regulares
lenguajes formales
Tipos de lenguaje formal según Chomsky
Compilador2
Expresiones regulares2.pdf
Analisis Lexico
Analizador LÉxico
Lenguajes formales y teoría de autómatas I.pdf
Expresiones regulares
Publicidad

Más de JS Legendario (15)

PDF
S12.s1 - Material.pdf
PDF
S04.s1 - Material.pdf
PDF
S05.s1 - Material.pdf
PDF
S06.s1 - Material.pdf
PDF
S14.s1 - Material.pdf
PDF
S01.s1 - Material.pdf
PDF
S17.s1 - Material.pdf
PDF
S13.s1 - Material.pdf
PDF
S16.s1 - Material.pdf
PDF
S15.s1 - Material.pdf
PDF
S09.s1 - Material.pdf
PDF
S08.s1 - Material.pdf
PDF
S10.s1 - Material.pdf
PDF
S11.s1 - Material.pdf
PDF
S07.s1 - Material.pdf
S12.s1 - Material.pdf
S04.s1 - Material.pdf
S05.s1 - Material.pdf
S06.s1 - Material.pdf
S14.s1 - Material.pdf
S01.s1 - Material.pdf
S17.s1 - Material.pdf
S13.s1 - Material.pdf
S16.s1 - Material.pdf
S15.s1 - Material.pdf
S09.s1 - Material.pdf
S08.s1 - Material.pdf
S10.s1 - Material.pdf
S11.s1 - Material.pdf
S07.s1 - Material.pdf

Último (20)

PDF
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
PPTX
MAQUINAS DE FLUIDO - UNIDAD I.pptx
PDF
Seguridad vial en carreteras mexico 2003.pdf
PDF
manual-sostenibilidad-vivienda-yo-construyo (1).pdf
PDF
Módulo V. Tema 2. Disruptive & Transformation 2024 v.0.4.pdf
PPTX
MEDIDAS ELECTRICAS electricas de tecnica
PPTX
ETICA PROFESIONAL PARA MOTIVACION PERSONAL
PPTX
Expo petroelo 2do ciclo.psssssssssssssptx
PDF
GUIAS_TECNICAS_T1-OC DEL SEGURO SOCIAL.pdf
PDF
Presentacion_Resolver_CEM_Hospitales_v2.pdf
PPT
Sistema de muestrea de datos en operaciones
PDF
PPT - PROYECTO FINAL CONSTRUCCIÒN III.pdf
PDF
clase 1 dermocosmetica 2025 I (1).pdf..
PPT
empaque grava nuevo taladros de perforacion
PPTX
Introduccion a microcontroladores PIC.pptx
PDF
METODOLOGÍA DE INVESTIGACION ACCIDENTES DEL TRABAJO.pdf
PPT
flujo de caja paa la evaluacion de proyectos
PDF
Vigas tipos, datos curiosos y contruccion
PPT
flujo de caja 2 para la evaluacion de proyectos
PPT
CLASE_1_CICLO_HIDROLOGICO_ALUMNOS_2015.ppt
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
MAQUINAS DE FLUIDO - UNIDAD I.pptx
Seguridad vial en carreteras mexico 2003.pdf
manual-sostenibilidad-vivienda-yo-construyo (1).pdf
Módulo V. Tema 2. Disruptive & Transformation 2024 v.0.4.pdf
MEDIDAS ELECTRICAS electricas de tecnica
ETICA PROFESIONAL PARA MOTIVACION PERSONAL
Expo petroelo 2do ciclo.psssssssssssssptx
GUIAS_TECNICAS_T1-OC DEL SEGURO SOCIAL.pdf
Presentacion_Resolver_CEM_Hospitales_v2.pdf
Sistema de muestrea de datos en operaciones
PPT - PROYECTO FINAL CONSTRUCCIÒN III.pdf
clase 1 dermocosmetica 2025 I (1).pdf..
empaque grava nuevo taladros de perforacion
Introduccion a microcontroladores PIC.pptx
METODOLOGÍA DE INVESTIGACION ACCIDENTES DEL TRABAJO.pdf
flujo de caja paa la evaluacion de proyectos
Vigas tipos, datos curiosos y contruccion
flujo de caja 2 para la evaluacion de proyectos
CLASE_1_CICLO_HIDROLOGICO_ALUMNOS_2015.ppt

S03.s1 - Material.pdf

  • 2. TEORIA DE LENGUAJES DE PROGRAMACION Expresiones y Lenguajes regulares
  • 3. This material has been prepared by Richard E. Aguilar P. Contenido de la Sesión • Lenguajes regulares. • Expresiones regulares. • Extensiones de las expresiones regulares. • Operaciones con expresiones regulares.
  • 5. This material has been prepared by Richard E. Aguilar P. Logro Al finalizar la sesión el alumno comprende qué son los lenguajes regulares y las expresiones regulares que los definen, así como las principales operaciones que pueden ejecutarse sobre dichas expresiones.
  • 7. This material has been prepared by Richard E. Aguilar P. Lenguajes regulares • Es un lenguaje generado por una gramática regular y descrito por una expresión regular. • Lo anterior quiere decir, que las expresiones regulares son un meta lenguaje para describir los lenguajes regulares. • El conjunto de cadenas generados por una expresión regular se denomina lenguaje regular o lenguaje generado por una expresión regular y se escribe como L(r) donde r es una expresión regular.
  • 8. This material has been prepared by Richard E. Aguilar P. Lenguajes regulares • Los lenguajes regulares sobre un alfabeto dado Σ son todos los lenguajes que se pueden formar a partir de los lenguajes básicos Φ, {λ}, {a}, a ϵ Σ, por medio de operaciones de unión, concatenación y estrella de Kleene. • Sea Σ un alfabeto, entonces Φ, {λ} y {a}, para cada a ϵ Σ, son lenguajes regulares sobre Σ. Estos son los denominados lenguajes reglares básicos. • Si A y B son lenguajes regulares sobre Σ, también lo son: ▪ A U B (unión) ▪ AB (concatenación) ▪ A* (estrella de Kleene)
  • 9. This material has been prepared by Richard E. Aguilar P. Expresión regular • Las expresiones regulares representan patrones de cadenas de caracteres. • Una expresión regular r se encuentra completamente definida mediante el conjunto de cadenas con las que concuerda. • Una expresión regular r también contendrá caracteres del alfabeto, pero esos caracteres tendrán un significado diferente: en una expresión regular todos los símbolos indican patrones. • Una expresión regular r puede contener caracteres que tengan significados especiales denominados metacaracteres.
  • 10. This material has been prepared by Richard E. Aguilar P. Expresión regular • Las expresiones regulares representan lenguajes regulares y su propósito es simplificar la escritura de los lenguajes regulares. • La siguiente es la definición recursiva de las expresiones regulares sobre su alfabeto Σ dado. 1. Expresiones regulares básicas: • Φ es una expresión regular que representa al lenguaje Φ • λ es una expresión regular que representa al lenguaje {λ} • a es una expresión regular que representa al lenguaje {a}, a ϵ Σ 2. Si R y S son expresiones regulares sobre Σ, también lo son: R|S, RS y R*
  • 11. This material has been prepared by Richard E. Aguilar P. Expresiones regulares básicas • Las expresiones regulares básicas son precisamente los caracteres simples del alfabeto, los cuales se corresponden a si mismos. • Dado cualquier caracter a del alfabeto Σ, indicamos que la expresión regular a corresponde al caracter a escribiendo: L(a) = {a} • Necesitamos definir la cadena vacía, es decir la cadena que no contiene ningún carácter, para ello escribimos: L(λ) = {λ} • Definimos también un símbolo que corresponda a la ausencia de cadenas, es decir cuyo lenguaje sea el conjunto vacío, para ello escribimos: L(Φ) = { }
  • 12. This material has been prepared by Richard E. Aguilar P. Operaciones de expresiones regulares • Existen tres operaciones básicas en las expresiones regulares: • Selección entre alternativas, la cual se indica con el metacaracter | • Concatenación, que se indica mediante yuxtaposición, sin utilizar un metacaracter. • Repetición o “cerradura”, la cual se indica mediante el metacaracter *
  • 13. This material has been prepared by Richard E. Aguilar P. Selección entre alternativas • Si r y s son expresiones regulares, entonces r|s es una expresión regular que define a cualquier cadena que concuerda con r o con s. • En términos de lenguajes, el lenguaje de r|s es la unión de los lenguajes de r y s, es decir: L(r|s) = L(r) U L(s)
  • 14. This material has been prepared by Richard E. Aguilar P. Concatenación • La concatenación de dos expresiones regulares r y s se escribe como rs y corresponde a cualquier cadena que sea la concatenación de dos cadenas, con la primera de ellas correspondiendo a r y la segunda correspondiendo a s. • Podemos el efecto de la concatenación en términos de lenguajes generados al definir la concatenación de dos conjuntos de cadenas S1 y S2, el conjunto concatenado S1S2 es el conjunto de cadenas de S1 complementado con todas las cadenas de S2. • En términos de lenguajes, la concatenación puede describirse como sigue: L(rs) = L(r)L(s)
  • 15. This material has been prepared by Richard E. Aguilar P. Repetición • La operación de repetición de una expresión regular, denominada también en ocasiones cerradura (de Kleene), se escribe como r*, donde r es una expresión regular. • La expresión regular r* corresponde a cualquier concatenación finita de cadenas, cada una de las cuales corresponde a r. • En términos de lenguajes, la repetición puede describirse como sigue: L(r*) = L(r)*
  • 16. This material has been prepared by Richard E. Aguilar P. Precedencia de operaciones • La convención estándar es que la repetición tiene la mayor precedencia. • La concatenación le sigue en precedencia a la repetición. • La selección tiene la precedencia mas baja. • Si deseamos indicar una precedencia diferente, entonces debemos de utilizar paréntesis.
  • 17. This material has been prepared by Richard E. Aguilar P. Nombres para expresiones regulares • A menudo es útil como una forma de simplificar la notación proporcionar un nombre para una expresión regular extensa. De modo que no sea necesario escribir la expresión misma cada vez que deseamos utilizarla. • Por lo general esto es muy útil cuando definimos elementos de un lenguaje de programación, por ejemplo cuando deseamos definir a un numero entero compuesto de uno o más dígitos numéricos.
  • 18. This material has been prepared by Richard E. Aguilar P. Extensiones para las expresiones regulares • Hemos definido las expresiones regulares con un conjunto mínimo de operaciones y podríamos limitarnos solo a ellas. • Sin embargo, el construir expresiones regulares utilizando solo las operaciones básicas, en ocasiones es poco manejable, ya que se crean expresiones regulares que son más complicadas de lo que serian si se dispusiera de un conjunto de operaciones más expresivo y por lo tanto más flexible.
  • 19. This material has been prepared by Richard E. Aguilar P. Una o más repeticiones • Una situación típica que surge es la necesidad de una o más repeticiones en lugar de ninguna (en cuyo caso utilizaríamos r*), lo que garantiza que aparece por lo menor una cadena correspondiente a r y no permite la cadena vacía λ • Para esta situación utilizamos el metacaracter + tal como sigue: r+
  • 20. This material has been prepared by Richard E. Aguilar P. Cualquier caracter • Una situación común es la necesidad de generar cualquier carácter en el alfabeto, de no contar con una operación especial esto requerirá que todo carácter en el alfabeto sea enumerado en una alternativa. • Un metacaracter típico que se utiliza para expresar una concordancia de cualquier carácter es el punto “.” el cual no requiere que el alfabeto se escriba en forma extendida.
  • 21. This material has been prepared by Richard E. Aguilar P. Intervalo de caracteres • A menudo necesitamos escribir un intervalo de caracteres, esto pudiera hacerse mediante el uso del operador de selección, sin embargo esto puede ser muy extenso. • Una alternativa es tener una notación especial para esta situación, y una que es muy común es la de emplear corchetes y un guion, tal como sigue: [a-z] (para las letras minúsculas). Lo mismo aplica a los intervalos múltiples. • El uso de corchetes también se emplea para alternativas individuales de modo que a|b|c puede expresarse como [abc]
  • 22. This material has been prepared by Richard E. Aguilar P. Cualquier carácter que no esté en un conjunto dado • A menudo es de utilidad excluir un carácter simple del conjunto de caracteres por generar. • Aunque existe la posibilidad de diseñar un metacaracter para indicar la operación de negación o complementaria sobre un conjunto de alternativas, es una opción mas simple utilizar la notación tal como sigue: [^a] para indicar que a no debe considerarse. • También es posible indicar que no sea ninguno de varios caracteres, para ello indicamos: [^abc]
  • 23. This material has been prepared by Richard E. Aguilar P. Subexpresiones opcionales • Un suceso que se presenta comúnmente es el de cadenas que contienen partes opcionales que pueden o no aparecer en cualquier cadena en particular. • Para ello se utiliza el metacaracter de signo de interrogación “?”, con dicho metacaracter expresamos que la cadena es opcional o lo que es lo mismo, que la cadena puede aparecer cero o una vez. • Por ejemplo un numero entero puede tener o no signo, lo cual podemos expresar como: (+|-)?
  • 25. This material has been prepared by Richard E. Aguilar P. PREGUNTAS
  • 27. This material has been prepared by Richard E. Aguilar P. Resumiendo • Un lenguaje regular es generado por una gramática regular y descrito por una expresión regular. • Las expresiones regulares representan patrones de cadenas de caracteres.