Está en la página 1de 4

Instituto Tecnológico Superior de Jerez

Jerez de García Salinas a 11 de febrero del 2020


Ricardo Benjamín Viramontes Juárez
benja120599@gmail.com
S17070162
INGENIERÍA EN SISTEMAS COMPUTACIONALES
Lenguajes y Autómatas I.
6to. SEMESTRE.
Tema 1
Definición de un Expresión Regular.
M.C.C. Vanessa Saldívar Quezada.
Expresión Regular.

La búsqueda de caracteres o secuencias concretas de caracteres en documentos


ha pasado a formar parte de las tareas estándar y más recurrentes de la
tecnología de la información. Por lo general, el objetivo es modificar o sustituir
fragmentos de texto o líneas de código, cuya complejidad aumenta en función de
las veces que la secuencia de caracteres aparece en el documento.

En la década de 1950 se encontró una solución que se basa en las lenguas


formales de la informática teórica que sigue presente en el desarrollo actual de
software y que permite simplificar estas tareas repetitivas mediante el uso de las
denominadas expresiones regulares.

¿Qué es una expresión regular?

Las expresiones regulares son una serie de caracteres que forman un patrón,
normalmente representativo de otro grupo de caracteres mayor, de tal forma que
se pueda comparar el patrón con otro conjunto de caracteres para ver las
coincidencias.

Las expresiones regulares están disponibles en casi cualquier lenguaje de


programación, pero, aunque su sintaxis es relativamente uniforme, cada lenguaje
usa su propio dialecto.

Las expresiones regulares son las unidades de descripción de los lenguajes


regulares, que se incluyen en los llamados lenguajes formales. Estas son un
instrumento clave de la informática teórica, la cual, entre otras cosas, establece las
bases para el desarrollo y la ejecución de programas informáticos, así como para
la construcción del compilador necesario para compilar los programas. Gracias a
esto, las expresiones regulares, se utilizan principalmente en el ámbito del
desarrollo de software.

Para cada expresión regular existe un denominado autómata finito (también


conocido como máquina de estado finito) que acepta el lenguaje especificado por
la expresión y que, con ayuda de la construcción de Thompson, se desarrolla a
partir de una expresión regular. Por otro lado, para cada autómata finito también
hay una expresión regular que describe el lenguaje aceptado por el autómata.
Este puede generarse bien con el algoritmo de Kleene o bien con la eliminación de
estados.

¿Cómo funciona una expresión regular?

Una expresión regular puede estar formada exclusivamente por caracteres


normales, o bien por una combinación de caracteres normales y meta caracteres.
Los meta caracteres describen ciertas construcciones o disposiciones de
caracteres: por ejemplo, si un carácter debe estar en el inicio de la línea o si un
carácter solo debe o puede aparecer exactamente una vez, más veces o menos.

¿Qué retos presenta el uso de las expresiones regulares?

Trabajar con expresiones regulares da mucha libertad, ya que siempre habrá


varias soluciones posibles para cada tarea que se deseé resolver con una
expresión regular. El hecho de que el resultado deseado se pueda obtener de
diferentes maneras, no siempre es considerado como una ventaja:

Para asegurar que se logrará el objetivo en todos los casos, se pueden utilizar
instrucciones muy generales, pero, si se busca un resultado más exacto, entonces
será inevitable formular un patrón de expresiones regulares muy específico.

Aunque también vale la pena considerar la longitud: cuanto más compacta sea la
expresión regular, menor será su tiempo de procesamiento. Sin embargo, no se
debe descuidar la legibilidad. Si las instrucciones originales son demasiado
complicadas y no tienen comentarios, modificarlas a posteriori es muy difícil.
Referencias Bibliográficas.

IONOS. (30-12-19). Regex o expresiones regulares: la manera más sencilla de


describir secuencias de caracteres. 10-febrero-2020, de IONOS Sitio web:
https://www.ionos.es/digitalguide/paginas-web/creacion-de-paginas-web/regex/

Unknown. (20 de junio de 2005). Expresiones Regulares. 10-febrero-2020, de


Desarrollo Web Sitio web: https://desarrolloweb.com/articulos/2033.php

También podría gustarte