Lenguajes formales - Facultad de Informática - Universidad ...
Lenguajes formales - Facultad de Informática - Universidad ... Lenguajes formales - Facultad de Informática - Universidad ...
Extensiones a la notación de las expresiones regulares Estas extensiones no amplían la expresividad, pero hacen mucho más cómodo expresar lenguajes con ERs H? ≡ H | λ (Se llama opcionalidad ? y tiene la misma prioridad que repetición *) H+ ≡ H(H)* (Se llama cierre positivo + y tiene la misma prioridad que repetición *) [x n - x m ] ≡ x n | x n+1 | x n+2 | … | x m (Se llama rango [ - ] y sólo se usa para alfabetos totalmente ordenados) Ej: Intervalos de números naturales como [3-9] o de caracteres ASCII como [f-m] \x ≡ carácter x (Se llama escape de metacaracteres \ y se usa para incluir en el lenguaje definido caracteres que actúan como operadores, es decir son metacaracteres, en las expresiones regulares) Ej: \* para denotar el carácter * Ej: \\ para denotar el carácter \ … Procesadores de Lenguaje Ingeniería en Informática R.5
Ejemplos de expresiones regulares Descripción del lenguaje de las cadenas que empiezan por una “a” y continúan con “a’s” y “b’s” a(a|b)* Descripción del lenguaje de las cadenas que empiezan por “a”, continúan con “b’s” y “c’s” y terminan en “d” a(b|c)*d Descripción del lenguaje de las cadenas formadas por trozos de cadena que pueden empezar (o no) por una “a” y continúan con un número que tenga al menos un dígito; además terminan siempre en asterisco * (a?[0-9]+)*\* Procesadores de Lenguaje Ingeniería en Informática R.6
- Page 1 and 2: Procesadores de Lenguaje Repaso. Le
- Page 3 and 4: Clasificación de gramáticas forma
- Page 5: Expresiones regulares (ERs) El con
- Page 9 and 10: Gramáticas regulares Las gramáti
- Page 11 and 12: Procesadores de Lenguaje Ingenierí
- Page 13 and 14: Procesadores de Lenguaje Ingenierí
- Page 15 and 16: Expresiones regulares, gramáticas
- Page 17 and 18: Gramáticas incontextuales Las gra
- Page 19 and 20: G bin Ejemplo de derivación bits
- Page 21 and 22: Árboles de derivación Un árbol
- Page 23 and 24: Procesadores de Lenguaje Ingenierí
- Page 25 and 26: Procesadores de Lenguaje Ingenierí
- Page 27 and 28: Documentación técnica de un lengu
- Page 29 and 30: Sintaxis de los números enteros po
- Page 31 and 32: Procesadores de Lenguaje Ingenierí
- Page 33 and 34: Ejemplo con diagramas sintácticos
- Page 35: Formas normales Maneras más organ
Extensiones a la notación <strong>de</strong> las expresiones regulares<br />
Estas extensiones no amplían la expresividad, pero<br />
hacen mucho más cómodo expresar lenguajes con ERs<br />
H? ≡ H | λ (Se llama opcionalidad ? y tiene la misma<br />
prioridad que repetición *)<br />
H+ ≡ H(H)* (Se llama cierre positivo + y tiene la misma<br />
prioridad que repetición *)<br />
[x n - x m ] ≡ x n | x n+1 | x n+2 | … | x m (Se llama rango [ - ] y sólo se<br />
usa para alfabetos totalmente or<strong>de</strong>nados)<br />
Ej: Intervalos <strong>de</strong> números naturales como [3-9] o <strong>de</strong><br />
caracteres ASCII como [f-m]<br />
\x ≡ carácter x (Se llama escape <strong>de</strong> metacaracteres \ y se<br />
usa para incluir en el lenguaje <strong>de</strong>finido caracteres que<br />
actúan como operadores, es <strong>de</strong>cir son metacaracteres, en<br />
las expresiones regulares)<br />
Ej: \* para <strong>de</strong>notar el carácter *<br />
Ej: \\ para <strong>de</strong>notar el carácter \<br />
…<br />
Procesadores <strong>de</strong> Lenguaje<br />
Ingeniería en <strong>Informática</strong> R.5