Automatas

Solo disponible en BuenasTareas
  • Páginas : 8 (1919 palabras )
  • Descarga(s) : 0
  • Publicado : 30 de marzo de 2011
Leer documento completo
Vista previa del texto
Expresiones Regulares
Expresiones Regulares
Metacaracteres
Expresiones regulares básicas
Expresiones regulares de un sólo carácter
Construcción de expresiones regulares
Ejemplos de expresiones regulares básicas
Expresiones regulares extendidas
Ejemplos de expresiones regulares extendidas
Expresiones Regulares en GNU
Preguntas y Ejercicios
Bibliografía y Referencias

ExpresionesRegulares.
Las expresiones regulares (ER) son una forma de describir cadenas de caracteres. Se usan en operaciones de apareamiento o comparación. Las expresiones regulares permiten realizar búsquedas o sustituciones de gran complejidad.

Las búsquedas en el editor vi con los comandos / y ? aceptan expresiones regulares; esto hace las búsquedas mucho más potentes y flexibles. Las expresionesregulares son aceptadas en otros editores y en muchos comandos, si bien con algunas diferencias de sintaxis.

Una expresión regular es un patrón que describe un conjunto de cadenas de caracteres. Por ejemplo, el patrón aba*.txt describe el conjunto de cadenas de caracteres que comienzan con aba, contienen cualquier otro grupo de caracteres, luego un punto, y finalmente la cadena txt. El símbolo *se interpreta como "0, 1 o más caracteres cualesquiera".

Las expresiones regulares se construyen como las expresiones aritméticas, usando operadores para combinar expresiones más pequeñas. Analizaremos esos operadores y las reglas de construcción de expresiones regulares, atendiendo siempre al conjunto de cadenas que representa cada patrón.
Metacaracteres.
La construcción de expresionesregulares depende de la asignación de significado especial a algunos caracteres. En el patrón aba*.txt el caracter * no vale por sí mismo, como el caracter asterisco, sino que indica un "conjunto de caracteres cualesquiera". Asimismo, el caracter ? no se interpreta como el signo de interrogación sino que representa "un caracter cualquiera y uno solo". Estos caracteres a los que se asigna significadoespecial se denominan "metacaracteres".
El conjunto de metacaracteres para expresiones regulares es el siguiente:
\ ^ $ . [ ] { } | ( ) * + ?
Estos caracteres, en una expresión regular, son interpretados en su significado especial y no como los caracteres que normalmente representan. Una búsqueda que implique alguno de estos caracteres obligará a "escaparlo" de la interpretación mediante\, como se hace para evitar la interpretación por el shell de los metacaracteres del shell.  En una expresión regular, el caracter ? representa "un caracter cualquiera"; si escribimos \?, estamos representando el caracter ? tal cual, sin significado adicional.
Expresiones Regulares Básicas.
Una expresión regular determina un conjunto de cadenas de caracteres. Un miembro de este conjunto decadenas se dice que aparea, equipara o satisface la expresión regular.
ERs de un sólo caracter.
Las expresiones regulares se componen de expresiones regulares elementales que aparean con un único caracter:
 
Exp.Reg. | aparea con |
c | ER que aparea con el caracter ordinario c |
. | (punto) ER que aparea con un caracter cualquiera excepto nueva línea |
[abc] | ER de un caracter queaparea con a, b o c |
[^abc] | ER de un caracter que no sea a, b o c |
[0-9][a-z][A-Z] | ERs de un caracter que aparean con cualquier caracter en el intervalo indicado. El signo - indica un intervalo de caracteres consecutivos. |
\e | ER que aparea con alguno de estos caracteres (en lugar de la e): . * [ \   cuando no están dentro de [ ]^         al principio de la ER, o al principio dentro de[ ]$         al final de una ER
/         usado para delimitar una ER |
Los paréntesis rectos [] delimitan listas de caracteres individuales. Muchos metacaracteres pierden su significado si están dentro de listas: los caracteres especiales . * [ \ valen por sí dentro de []. Para incluir un caracter ] en una lista, colocarlo al principio; para incluir un ^ colocarlo en cualquier lugar menos al...
tracking img