0Pricing
Python Academy · Lección

Uso de re.match, re.search y re.findall

Aplique las funciones principales de re para encontrar patrones en cadenas.

Uso de re.match, re.search y re.findall es una lección gratuita de Python Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Python Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Python Academy incluye 4 lecciones en total.

Introducción

El módulo re proporciona varias funciones para aplicar patrones a cadenas.

re.match() — Principio de la cadena

re.match(pattern, string) solo busca coincidencias al PRINCIPIO de la cadena. Devuelve un objeto Match o None.
import re
print(re.match(r'\d+', '123abc'))  # match
print(re.match(r'\d+', 'abc123'))  # None

re.search() — En cualquier posición

re.search(pattern, string) encuentra la PRIMERA coincidencia en cualquier posición de la cadena. Devuelve Match o None.
import re
m = re.search(r'\d+', 'abc 123 def')
if m: print(m.group())

re.findall() — Todas las coincidencias

re.findall(pattern, string) devuelve una lista de todas las coincidencias no superpuestas como cadenas.
import re
print(re.findall(r'\d+', 'one 1 two 22 three 333'))

re.finditer() — Iterador

re.finditer() es similar a findall(), pero devuelve un iterador de objetos Match, lo que ahorra memoria con cadenas grandes.
import re
for m in re.finditer(r'\d+', 'x1 y22 z333'):
    print(m.group(), m.start(), m.end())

Métodos del objeto Match

m.group() devuelve la cadena coincidente. m.start() y m.end() devuelven las posiciones. m.span() devuelve (start, end).
import re
m = re.search(r'(\w+)@(\w+)', 'send to user@example')
if m:
    print(m.group(), m.group(1), m.group(2))

re.fullmatch()

re.fullmatch(pattern, string) requiere que el patrón coincida con la cadena COMPLETA.
import re
print(re.fullmatch(r'\d+', '123'))    # match
print(re.fullmatch(r'\d+', '123abc'))  # None

re.split()

re.split(r'\s+', string) divide según el patrón. r'[,;\s]+' divide por comas, punto y coma y espacios.
import re
print(re.split(r'[,;\s]+', 'one,two; three four'))

re.sub() para sustituciones

re.sub(pattern, repl, string) reemplaza las coincidencias. repl puede ser una cadena o una función.
import re
print(re.sub(r'\d+', 'NUM', 'I have 3 cats and 12 dogs'))

Patrones compilados

pattern = re.compile(r'\d+') compila el patrón una vez. Use pattern.findall(), .search(), etc.; es más rápido para usos repetidos.
import re
digits = re.compile(r'\d+')
print(digits.findall('abc 123 def 456'))

Indicadores

re.IGNORECASE (re.I), re.MULTILINE (re.M) y re.DOTALL (re.S) modifican el comportamiento de las coincidencias.
import re
print(re.findall(r'hello', 'HELLO World', re.IGNORECASE))

Comprobación rápida

¿Cuál es la diferencia entre re.match() y re.search()?

Resumen

re.match (solo al principio), re.search (primera coincidencia en cualquier posición), re.findall (todas como lista), re.finditer (todas como objetos Match), re.sub (reemplazar), re.compile (reutilizar el patrón).

Continúe

¡Excelente trabajo! Le espera la siguiente lección.

Preguntas frecuentes

¿La lección «Uso de re.match, re.search y re.findall» es gratis?

Sí — el texto completo de «Uso de re.match, re.search y re.findall» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Python Academy, actualiza a CoddyKit PRO. El curso de Python Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Uso de re.match, re.search y re.findall»?

Aplique las funciones principales de re para encontrar patrones en cadenas. Practicas Python Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Python Academy?

No se requiere experiencia previa. Python Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Uso de re.match, re.search y re.findall»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Python Academy?

Sí. Cada lección de Python Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos de las expresiones regulares
  2. Uso de re.match, re.search y re.findall
  3. Grupos y capturas con nombre
  4. re.sub, indicadores y patrones compilados
← Volver a Python Academy