Curso de Python desde cero

¿Qué son y cómo funcionan las expresiones regulares en Python?

Capítulo 47: Expresiones regulares - search() - RegEx

En este capítulo aprenderás a utilizar las expresiones regulares (RegEx) en Python. Por supuesto no todo, ya que es un tema bastante extenso, pero aprenderás algunas cosas básicas para que puedas empezar a defenderte.

Para poder seguir este capítulo deberás importar el módulo re con import re.

¿Qué son las expresiones regulares en Python?

Las expresiones regulares también llamadas RegEX son básicamente secuencias de caracteres que forman un patrón de búsqueda.
Dejemos los tecnicismos a un lado y pasemos a la práctica, seguro que lo entenderás mucho mejor.

Como utilizar la función search() en Python

import re

texto = "Bienvenidos a Programación fácil"
busqueda = re.search("i", texto)
print(busqueda)

En este ejemplo, buscamos con la función search() del módulo re una coincidencia en la cadena de caracteres (string). En concreto, el primer parámetro es lo que quieres buscar, en mi caso la letra 'i'.

Puesto que la letra 'i' se encuentra al menos una vez, el resultado es este Match, que quiere decir que encontró lo que buscaba, que hay letra 'i'.

La búsqueda se detiene cuando encuentra la primera 'i', las demás las ignora y por lo tanto, en span pone posición 1, 2 (de la posición 1 del string a la 2).

<re.Match object; span=(1, 2), match='i'>

En cambio, si no encuentra lo que se busca, devuelve un None.

import re

texto = "Bienvenidos a Programación fácil"
busqueda = re.search("I", texto)
print(busqueda)

Aunque esta vez esté buscando la letra 'i', no me ofrece resultados porque Python es case sensitive (distingue mayúsculas de minúsculas).

None

Este sistema es tan preciso que hasta te permite buscar espacios en blanco.
Veamos un último ejemplo. Puedes buscar palabras o frases enteras, no solo un carácter:

import re

texto = "Bienvenidos a Programación fácil"
busqueda = re.search("Bienvenidos", texto)
print(busqueda)

Encuentra la palabra "Bienvenidos" en la posición 0 del string y llega hasta la 11.

<re.Match object; span=(0, 11), match='Bienvenidos'>

Comentarios

Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.

Programación Fácil YouTube

Suscríbete

Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.

Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.

No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.