Learn AI with Python · Lección

Limpieza de texto para IA con regex

Eliminación de etiquetas HTML, puntuación, URL y correos electrónicos: creación de funciones de preprocesamiento de texto.

Lección 4 de 413 pasos

Limpieza de texto para IA con regex es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 4 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 Learn AI with Python, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Por qué limpiar texto para la IA?

El texto sin procesar de la web está lleno de ruido: etiquetas HTML, URL, correos electrónicos, espacios en blanco adicionales y caracteres especiales. Introducir todo eso en un modelo desperdicia capacidad y perjudica la calidad.

Regex es la herramienta fundamental del preprocesamiento de texto. Crearemos una canalización de limpieza paso a paso.

Una muestra desordenada

Este es el tipo de cadena que podría extraer. Cada paso de limpieza se ocupa de un tipo de ruido.

raw = "<p>Contact us at info@shop.com or visit https://shop.com NOW!!!   Thanks</p>"

Eliminación de etiquetas HTML

Las etiquetas HTML tienen este aspecto: <tag>. El patrón <[^>]+> hace coincidir un <, cualquier carácter que no sea > y, después, >.

Sustitúyalas por una cadena vacía. (Para HTML complejo, es preferible utilizar un analizador como BeautifulSoup, pero regex resulta adecuado para una limpieza rápida).

import re

text = re.sub("<[^>]+>", "", raw)
print(text)   # "Contact us at info@shop.com or visit https://shop.com NOW!!!   Thanks"

Eliminación de URL

Las URL comienzan por http:// o https://, seguidos de caracteres que no sean espacios. Haga coincidirlas y elimínelas.

import re

text = re.sub("https?://\S+", "", text)
print(text)   # URL removed

Eliminación de direcciones de correo electrónico

Un patrón sencillo para un correo electrónico: caracteres de palabra, un @, un dominio, un punto y un dominio de nivel superior.

import re

text = re.sub("\S+@\S+\.\S+", "", text)
print(text)   # email removed

Enmascaramiento en lugar de eliminación

En los conjuntos de datos de privacidad, a menudo se enmascaran los datos sensibles en lugar de eliminarlos, conservando la estructura de las frases.

import re

masked = re.sub("\S+@\S+\.\S+", "[EMAIL]", "reach me at a@b.com please")
print(masked)   # "reach me at [EMAIL] please"

Eliminación de caracteres especiales

Conserve las letras, los dígitos y los espacios; elimine la puntuación y los símbolos con una clase negada. Según la tarea, decida si debe conservar algunos signos de puntuación.

import re

text = re.sub("[^A-Za-z0-9 ]", "", "Hello!! @world #2026")
print(text)   # "Hello world 2026"

Normalización de espacios en blanco

La limpieza deja dobles espacios y saltos de línea sueltos. Convierta cualquier secuencia de espacios en blanco en un único espacio con \s+ y, después, aplique strip() a los extremos.

import re

text = re.sub("\s+", " ", "Hello    world\n\n  again").strip()
print(text)   # "Hello world again"

Conversión a minúsculas y la importancia del orden

La conversión a minúsculas es habitual para mantener la coherencia, pero debe aplicarse con cuidado. Además, el orden es importante: elimine el HTML antes de quitar los caracteres especiales y normalice los espacios en blanco al final para que las eliminaciones anteriores no dejen huecos.

text = text.lower()
# Pipeline order: tags -> urls -> emails -> specials -> whitespace -> lowercase

Creación de una canalización de limpieza

Envuelva los pasos en una sola función para que todos los documentos reciban el mismo tratamiento. Compile previamente los patrones para mejorar la velocidad al procesar muchos documentos.

import re

def clean_text(s):
    s = re.sub("<[^>]+>", " ", s)          # html tags
    s = re.sub("https?://\S+", " ", s)     # urls
    s = re.sub("\S+@\S+\.\S+", " ", s)    # emails
    s = re.sub("[^A-Za-z0-9 ]", " ", s)     # special chars
    s = re.sub("\s+", " ", s).strip()       # whitespace
    return s.lower()

print(clean_text(raw))

Aplicación de la canalización a un DataFrame

Ejecute el limpiador sobre una columna de texto completa con apply para producir una columna lista para el modelo.

import pandas as pd

df["clean"] = df["text"].apply(clean_text)
print(df[["text", "clean"]].head())

Comprobación rápida: normalización de espacios en blanco

Después de la limpieza, el texto contiene secuencias de varios espacios y saltos de línea que desea reducir a espacios individuales.

Resumen: limpieza de texto con regex

Ha creado una canalización de preprocesamiento real:

  • Eliminar el HTML con <[^>]+>
  • Eliminar URL (https?://\S+) y correos electrónicos
  • Enmascarar datos sensibles con marcadores como [EMAIL]
  • Eliminar caracteres especiales con una clase negada
  • Normalizar los espacios en blanco con \s+ + strip()
  • Envolverlo en una función y aplicarlo con apply a una columna

Con esto termina la sección sobre regex para texto destinado a la IA. A continuación: bases de datos para proyectos de IA.

Gratis para empezar

Aprende Python con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
53
Lecciones
225

Preguntas frecuentes

¿La lección «Limpieza de texto para IA con regex» es gratis?

Sí — el texto completo de «Limpieza de texto para IA con regex» 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 Learn AI with Python, actualiza a CoddyKit PRO. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Qué aprenderé en «Limpieza de texto para IA con regex»?

Eliminación de etiquetas HTML, puntuación, URL y correos electrónicos: creación de funciones de preprocesamiento de texto. Practicas Learn AI with Python 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 Learn AI with Python?

No se requiere experiencia previa. Learn AI with Python 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 4 de 4.

¿Cuánto tiempo toma la lección «Limpieza de texto para IA con regex»?

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 Learn AI with Python?

Sí. Cada lección de Learn AI with Python 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. Patrones de regex y clases de caracteres
  2. Módulo re: search, match, findall, sub
  3. Grupos de captura y grupos con nombre
  4. Limpieza de texto para IA con regex
← Volver a Learn AI with Python