typestar

Regex: search y findall en Python

Las funciones centrales de re para encontrar patrones de texto.

import re

registro = "user=ada action=login ip=10.0.0.7"

encontrado = re.search(r"user=(\w+)", registro)
usuario = encontrado.group(1)

numeros = re.findall(r"\d+", registro)
inicia_ok = re.match(r"user=", registro) is not None

palabras = re.split(r"\s+", registro)
tiene_ip = bool(re.search(r"ip=\d+\.\d+\.\d+\.\d+", registro))

Cómo funciona

  1. re.search encuentra la primera coincidencia donde sea.
  2. group(1) extrae la parte capturada entre paréntesis.
  3. findall devuelve cada coincidencia; split corta en una.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
12
Caracteres a escribir
331
Tokens
104
Ritmo de tres estrellas
100 tpm

Al ritmo de tres estrellas de 100 tokens por minuto, este intento toma unos 62 segundos.

Escribe este fragmento

Paso 1 de 5 en Expresiones regulares; paso 1 de 41 en Herramientas de dominio.

Siguiente →