Sunteți pe pagina 1din 3

http://www.regular-expressions.

info/

Referencias
? El elemento precedente es opcional y debe coincidir al menos una vez.
* El elemento precedente debe coincidir cero o más veces
{n} El elemento precedente debe coincidir exactamente n veces
+ El elemento precedente debe coincidir una o más veces.
{,m} El elemento precedente es opcional y debe coincidir al menos m veces.
{n,m}El elemento precedente debe coincidir al menos n veces pero no más de m veces.

Patrón Qué representa


pablo La cadena pablo
^pablo La cadena pablo al comienzo de una línea.
pablo$ La cadena pablo al final de una línea.
^pablo$ La cadena pablo formando una única línea.
niñ[oa] La cadena niño o niña
ni[^aeiou]o La tercera letra no es una vocal minúscula.
ga.o La tercera letra es cualquier carácter.
^....$ Cualquier línea que contenga 4 caracteres.
^\. Cualquier línea que comienza por punto.
^[^.] Cualquier línea que no comienza por punto.
niños* niño, niños, niñoss, niñosss, etc
“niño” niño entre comillas dobles.
“*niño”* niño con o sin comillas dobles.
[a-z][a-z]* una o más letras minúsculas.
[a-z]+ una o más letras minúsculas (sólo válido en algunas aplicaciones).
[^0-9A-Z] cualquier caracter que no sea ni número ni letra mayúscula.
[a-zA-Z] cualquier letra sea mayúscula o minúscula.
[Ax5] cualquier carácter que sea A, x o 5.
niño|niña|nadauna de las tres palabras.
(s|arb)usto la palabra susto o arbusto.
ga?t[oa] gato, gata, gasto, gaita, etc.
\<ga cualquier palabra que empiece por ga.
ño\> cualquier palabra que termine por ño
\<niño\> la palabra niño
o\{2,\} dos o más oes en una misma fila.

Ejercicio 1

Crea un fichero de texto (expr_reg_1.txt) que contenga las siguientes palabras (una en cada
línea):

a aba aabb aabbb aaabbb


aa baa abab ababa bababa
ab bbb baaa abbba bbaabb
ba aaaa baba bbaab bbabaa
aaa aaba bbbb bbbaa bbbabb
Escribe expresiones regulares de manera que la orden

$ grep -opciones expresion_regular expr_reg_1.txt

extraiga únicamente las líneas que:

1. contengan la cadena "aba"


2. contengan tres "b" seguidas
3. empiecen por dos "a"
4. terminen por "ba"
5. empiecen por "a" y terminen por "b" (enmedio puede haber cualquier cosa)
6. contengan sólo "a" (la cantidad no importa)
7. primero haya sólo una "b" y luego varias "a" (y no vuelva a haber más "b")
8. tengan tanto "a" como "b" (el orden o la cantidad no importa)
9. no tenga más de tres "a" o tres "b" seguidas
10. vayan alternando las "a" y las "b" sin repetirse
11. sólo tenga parejas de "a" y de "b"
12. tengan sólo "a" o sólo "b"
13. haya unas cuantas "a" y luego unas cuantas "b" o al revés
14. contengan la cadena "aba" o la cadena "bab"
15. contengan la cadena "ba" dos veces

Ejercicio 2
Crea un fichero de texto (expr_reg_2.txt) que contenga las siguientes palabras (una en cada
línea):

32.45
-34,2 12/05/2004 693141592 Pepito Conejo
5
esto no son cuatro
-45 1990130N 333, 91234567
palabras
3333, Esto Son Cuatro
.5667 199011N 963141592
3 Palabras
03/001/2003 22556871n 4/3/5 99/99/99 hola 25
PEPito
12.34 26026 68888 hola adios
CONejo

Escribe expresiones regulares de manera que la orden

$ grep -opciones expresion_regular expr_reg_1.txt

extraiga únicamente las líneas que sean:

1. números enteros (positivos o negativos)


2. números decimales (con una coma como separador decimal)
3. números decimales (con una coma o un punto como separador decimal)
4. números de teléfonos (de nueve cifras, que empiecen por 9 o 6)
5. códigos postales (de cinco cifras, que empiecen como mucho por 5)
6. DNI (siete u ocho cifras que pueden ir seguidas de una letra)
7. fechas (dd/mes/año)
8. palabras en minúsculas sin números
9. palabras en las que sólo la primera letra esté en mayúscula
10. tres o cuatro palabras (sin números)

S-ar putea să vă placă și