Mas conceptos generales de expresiones regulares y Python

En la primera oportunidad aprendimos algunos conceptos básicos y como ir iniciándonos con las expresiones regulares y el lenguaje de programación Python.

Ahora vamos a conocer más aspecto para dominar esta magnífica herramienta de análisis de patrones.

Como vimos en un inicio para trabajar con expresiones regulares necesitamos cargar el módulo llamado re y vamos a utilizar alguno de los métodos que vienen en el mismo.

Continuemos viendo algunos ejemplos sencillos, por ejemplo si queremos reconocer las siguientes cadenas xyz0, xyz1, xyz2, …, xyz9 en lugar de encerrar los 10 dígitos entre corchetes podemos hacer uso de un guión que identifica como intervalos, por ejemplo

1
2
3
4
import re

if re.match("xyz[0-9]", "xyz6"):
    print "correcto\n"

De la misma manera podemos modificar esta pequeña expresión regular para hacer que el último carácter pueda variar entre números y caracteres en Mayúscula o Minúscula.

1
2
if re.match("xyz[0-9a-zA-Z]", "xyzM"):
    print "correcto\n"

Existe un carácter que nos permite negar toda la expresión regular para ello utilizamos el simbolo “^”, por ejemplo necesitamos reconocer una cadena que el último carácter no sea una minúscula o un número.

1
2
if re.match("xyz[^0-9a-z]", "xyz+"):
    print "correcto\n"

Por último quería mostrarle un par de secuencias equivalentes para algunas expresiones regulares que van a permitir ahorrarnos mucho. Realmente son muy simples de implementar.

  • \d un dígito. Equivale a [0-9]
  • \D cualquier carácter que no sea un dígito. Equivale a [^0-9]
  • \w Cualquier caracter alfanumérico. Equivale a [a-zA-Z0-9_].
  • \W Cualquier carácter no alfanumérico. Equivale a [^a-zA-Z0-9_].
  • \s Cualquier carácter en blanco. Equivale a [ \t\n\r\f\v]
  • \S Cualquier carácter que no sea un espacio en blanco. Equivale a [^ \t\n\r\f\v]

Será hasta la próxima para continuar con expresiones regulares y el lenguaje de programación Python.


Tec. Informático, Analista en Sistema y Estudiante de Ing. en computación, Emprendedor, Creador y Webmaster de LaREPAWEB, El CoDiGo K, TeknoFlash, SQLite Latino.

Leave a Reply

*

web stats