UNIDAD 2: EXPRESIONES REGULARES.

 Hola. 

En esta nueva unidad veremos un nuevo tema que es: EXPRESIONES REGULARES.

LENGUAJES REGULARES:

Sus palabras contienen “regularidades”  de los mismos componentes, como por ejemplo en el lenguaje L1 siguiente:

 L1 = {ab, abab, ababab, abababab, . . .} 

 En este ejemplo se aprecia que las palabras de L1 son repeticiones de “ab” cualquier número de veces. Aquí la “regularidad” consiste en que las palabras contienen “ab” algún número de veces.

Los LENGUAJE REGULARES son aceptados por AUTOMATAS FINITOS:

Se representan por EXPRESIONES REGULARES y GRAMÁTICAS REGULARES.

DISEÑO DE EXPRESIONES REGULARES:

Representar todos los posibles lenguajes definidos sobre una alfabeto  ∑ (sumatoria en matemáticas).

Permiten filtrar textos para encontrar coincidencias, además comprueba la validez de fechas, documentos de identidad o contraseñas

Se utilizan para reemplazar texto con unas características concretas por otro.

DISEÑO DE EXPRESIONES REGULARES:

^: Inicio de la cadena, o inicio de línea en el patrón de línea múltiple.

\A: Inicio de la cadena.

$: Fin de la cadena, o fin de línea en el patrón de varias líneas.

\Z: Fin de la cadena.

\b: Límite de palabras.

\B: Sin límite de palabras.

\<: Inicio de la palabra.

\>: Fin de la palabra.

EXTENSION DE EXPRESIONES REGULARES A TRAVES DE ASERCIONES:

\c Carácter de control 

\s Espacio en blanco

\S Sin espacio en blanco 

\d Digito 

\D No digito \w Palabra 

\W No palabra 

\x Hexadecimal 

[:upper:] Letras mayúsculas 

[:lower:] Letras minúsculas.

[:alpha:] Todas la letras. 

[:alnum:] Dígitos y letras. 

[:digit:] Dígitos. 

[:xdigit:] Dígitos hexadecimales. 

[:punct:] Puntuación. 

[:blank:] Espacio y tab. 

[:space:] Caracteres en blanco. 

[:cntrl:] Control de caracteres. 

[:graph:] Caracteres impresos. 

[:print:] Caracteres y espacios impresos.

?= Afimación de aquí en adelante

?! Negación de aquí en adelante

?<= Afimación de aqui hacia atrás 

 ?() Condición [if then ] 

?()| Condición [if then else ] 

?# Comentario 

APLICACIONES PRACTICAS DE EXPRESIONES REGULARES:

Una expresión regular es una secuencia especial de caracteres que ayuda a hacer coincidir o encontrar otras cadenas o conjuntos de cadenas, utilizando una sintaxis especializada contenida en un patrón.

 Java tiene soporte para el uso de expresiones regulares a través del paquete java.util.regex , esta formado por dos clases: 

Clase Matcher 

Clase Pattern 

 PatternSyntaxException

La clase Pattern: Es la representacion compilada de una expresión regular, representa a la expresión regular, que en el paquete java.util.regex necesita estar compilada. 

 Para crear un patrón se necesita compilar una expresión regular, esto se lo consigue con el método compile:

 Pattern patrón = Pattern.compile("a(a|b)*a"); 

Clase Matcher: Es un tipo de objeto que se crea a partir de un patrón mediante la invocación del método Pattern.matcher. 

Este objeto es el que permite realizar operaciones sobre la secuencia de caracteres que se desea validar. Devuelve la expresión regular que se ha compilado.

El método split divide una cadena dada en partes que cumplan el patrón compilado y por último el método matches compila una expresión regular y comprueba una cadena de caracteres contra ella. 

Matcher analisis = patron.matcher(“aaaba”); 

método lookingAt: Intenta encajar el patrón en una cadena.

 método find: Busca subcadenas dentro de una cadena de caracteres 

método start: Marca el primer carácter de la ocurrencia en la secuencia.

método end: Marca el último carácter de la secuencia. 

Todos estos métodos devuelven un boleano: 

True = cadena aceptada 

False = cadena rechazada 

Eso fue todo por hoy. Muchas gracias.


Comentarios

Entradas más populares de este blog

UNIDAD 1: INTERFAZ GRÁFICA (GUI).