Está en la página 1de 2

UNIVERSIDAD SIMÓN BOLÍVAR

FACULTAD DE INGENIERIA DE SISTEMAS


2020-2
TALLER DE TEORÍA DE COMPILADORES

1. Obtener las siguientes expresiones regulares y para los siguientes lenguajes:

• El conjunto de todas las cadenas con el mismo número de ceros que de


unos, tales que ningún prefijo tiene dos ceros más que unos ni dos unos
más que ceros.

• El conjunto de todas las cadenas formadas por ceros y unos cuyo


número de ceros es divisible por cinco y cuyo número de unos es par.

• El conjunto de cadenas del alfabeto {a,b,c} que contienen al menos una a


y al menos una b.

• El conjunto de cadenas formadas por 0s y 1s cuyo décimo símbolo por la


derecha sea 1.

• El conjunto de cadenas formadas por ceros y unos cuyo número de ceros


es divisible por cinco.

• Los números binarios que tienen exactamente un par de ceros


consecutivos.

• El conjunto de todas las cadenas formadas por ceros y unos que


contienen 101 como subcadena.

• Los números binarios que no contiene la subcadena 1001.

2. Construya una expresión regular para los siguientes casos de aplicación y


desarróllelas en Java mediante la librería ReGex:

• Una expresión regular que valide cualquier correo electrónico completo.


• Una expresión regular que valide el formato de fecha: DD/MM/AAA.
• Una expresión regular que valide el formato de Hora: hh:mm:ss
• Una expresión regular que valide el formato de contraseñas: Entre 8 y 10
caracteres, por lo menos un digito y un alfanumérico, y no puede
contener caracteres espaciales.
• Una expresión regular que valide el formato de contraseñas: Entre 8 y 10
caracteres, por lo menos un digito y un alfanumérico, y puede contener
caracteres espaciales:
@ . - _ $ % * + ( )

• Una expresión regular que valide una dirección IPv4.


• Una expresión regular que valide una dirección IPv6.
• Una expresión regular que valide una dirección IPv6 Hex.
• Una expresión regular que valide una URL.
3. Simplifique las siguientes expresiones regulares:

• (𝝀⋃𝒂𝒂)∗
• (𝝀⋃𝒂𝒂)(𝝀⋃𝒂𝒂)∗
• 𝒂(𝝀⋃𝒂𝒂)∗ 𝒂 ∪ 𝝀

• 𝒂∗ 𝒃((𝒂 ∪ 𝒃)𝒂∗ 𝒃) ∪ 𝒂∗ 𝒃

Éxitos y bendiciones.

También podría gustarte