# Probador de regex Python (módulo re)

Prueba patrones del módulo re de Python en línea: grupos con nombre (?P…), retroreferencias (?P=name), VERBOSE, comportamiento findall y plantillas \\g — más código Python listo.

> Página canónica: https://elysiatools.com/es/tools/python-regex-tester

- **Categoría:** Development

- **Palabras clave:** probador regex python, módulo re online, expresión regular, findall, grupos con nombre

## Descripción general

Un tester para el módulo re integrado de Python. Escribe el patrón como en Python — grupos con nombre (?P…), la retroreferencia nombrada (?P=tag), VERBOSE con espacios libres y comentarios #, flags re.IGNORECASE / MULTILINE / DOTALL — y se traduce al motor ECMAScript y se ejecuta contra tu texto. Obtienes cada coincidencia (estilo findall/finditer con el interruptor g), una tabla de grupos capturados con nombres y una vista previa de re.sub donde las plantillas \\1, \\g<1> y \\g se traducen para la previsualización. Se genera código Python listo con los flags re.\* correctos y el acceso match.group(\\u0027name\\u0027). Se respetan las semánticas de Python: \\d \\w \\s son Unicode por defecto para str (desmarca para emular re.ASCII); posesivos y grupos atómicos (Python 3.11+) se emulan con captura-en-lookahead; la sintaxis .NET (?…) se rechaza con la pista de usar (?P…), igual que Python.

## Entradas

- **Patrón** (text): (?P\\d{4})-(?P\\d{2})
- **Cadena de prueba** (textarea): Paste the text to match against…
- **i — IGNORECASE** (checkbox)
- **m — MULTILINE** (checkbox)
- **s — DOTALL** (checkbox)
- **x — VERBOSE** (checkbox)
- **a — ASCII** (checkbox)
- **g — buscar todo (findall)** (checkbox)
- **Plantilla de reemplazo (opcional)** (text): \\g / \\1
- **Clases de caracteres Unicode (\d \w \s coinciden con Unicode)** (checkbox)

## Cuándo usarlo

- Al desarrollar scripts en Python y necesitar validar patrones con sintaxis nativa como \`(?P...)\` antes de ejecutarlos.
- Al diseñar reglas de sustitución con \`re.sub\` y verificar cómo responden plantillas como \`\\g\` o \`\\1\`.
- Al depurar expresiones complejas multilínea formateadas con comentarios mediante la bandera `re.VERBOSE` (`flag_x`).

## Cómo funciona

- Introduce la expresión regular en el campo de patrón respetando la sintaxis del módulo `re` de Python.
- Pega el texto de prueba en el área de cadena de prueba y configura las banderas deseadas (IGNORECASE, MULTILINE, DOTALL, VERBOSE, ASCII o findall).
- Opcionalmente, define una plantilla de reemplazo para previsualizar transformaciones equivalentes a `re.sub`.
- Examina las coincidencias encontradas, la tabla detallada de grupos nombrados y copia el fragmento de código Python generado.

## Casos de uso

- Extracción estructurada de metadatos como fechas, identificadores y etiquetas a partir de registros de texto o logs.
- Reescritura y normalización de cadenas de texto mediante grupos de captura y plantillas \`\\g\` para operaciones ETL.
- Validación sintáctica de etiquetas emparejadas en documentos XML o HTML usando retroreferencias nombradas `(?P=tag)`.

## Preguntas frecuentes

### ¿Por qué se usa \`(?P...)\` en lugar de \`(?...)\`?

El módulo `re` de Python requiere el prefijo `P` para grupos nombrados; la sintaxis estándar de otros motores como .NET o JavaScript no es compatible nativamente en Python.

### ¿Cómo funciona la bandera VERBOSE (`re.VERBOSE` / `flag_x`)?

Permite organizar la expresión regular ignorando espacios en blanco no escapados y admitiendo comentarios que comienzan con `#`.

### ¿Qué diferencia hay entre el modo Unicode y la bandera ASCII (`flag_a`)?

Por defecto, clases como `\w`, `\d` y `\s` coinciden con caracteres Unicode; activar ASCII (`re.A`) restringe las coincidencias exclusivamente a caracteres ASCII.

### ¿Cómo se referencian grupos capturados en la plantilla de sustitución?

Puedes usar la numeración tradicional \`\\1\` o la sintaxis nativa de Python \`\\g<1>\` y \`\\g\` para grupos nombrados.

### ¿La herramienta genera código Python listo para ejecutar?

Sí, genera un bloque de código Python que incluye la compilación con `re.compile`, las banderas activas y el acceso por índice o nombre con `match.group()`.

## Herramientas relacionadas

- [Depurador de Regex](https://elysiatools.com/es/tools/regex-debugger): Recorre cómo una expresión regular coincide con una cadena posición por posición: visualiza intentos de coincidencia, éxitos parciales, retrocesos y capturas — una herramienta para entender el comportamiento de regex, no solo el resultado final
- [Probador de regex C# (.NET)](https://elysiatools.com/es/tools/csharp-regex-tester): Prueba expresiones regulares de .NET/C# en línea: grupos con nombre ((?…)), opciones IgnoreCase/Multiline/Singleline, resaltado, tabla de grupos y código C# listo para pegar.
- [Probador de regex Java](https://elysiatools.com/es/tools/java-regex-tester): Prueba patrones java.util.regex en línea: grupos con nombre (?…), cuantificadores posesivos y grupos atómicos, flags de Pattern y código Java listo.
- [Explicador de Expresiones Regulares](https://elysiatools.com/es/tools/ai-regex-explainer): Usa IA para desglosar expresiones regulares en explicaciones legibles
- [Probador de regex PCRE2](https://elysiatools.com/es/tools/pcre-regex-tester): Prueba patrones PCRE2 en línea: toda la sintaxis de grupos con nombre ((?P), (?), (?'n')), cuantificadores posesivos, grupos atómicos, \\A \\z \\h — más pcre2grep y la API C.
- [Comparador de Múltiples Patrones](https://elysiatools.com/es/tools/multi-pattern-matcher): Ejecuta múltiples patrones de expresión regular contra texto en una operación
- [Probador de Grupos Nombrados](https://elysiatools.com/es/tools/named-group-tester): Analiza y muestra grupos de captura nombrados de patrones regex
- [Probador de Regex](https://elysiatools.com/es/tools/regex-tester): Prueba expresiones regulares contra texto

## Ejemplos

- [Ejemplos de Procesamiento de Imágenes Web Python](https://elysiatools.com/es/samples/web-image-processing-python): Ejemplos de procesamiento de imágenes Web Python usando PIL/Pillow incluyendo lectura, guardado, redimensionamiento y conversión de formato
- [Ejemplos de Reemplazo de Regex](https://elysiatools.com/es/samples/regex-replace): Colección de patrones de reemplazo de regex comunes y útiles para transformación de texto y limpieza de datos
- [Patrones Comunes de Expresiones Regulares](https://elysiatools.com/es/samples/regex-samples): Patrones de expresiones regulares comúnmente utilizados para validación y coincidencia
- [Ejemplos de Procesamiento de Cadenas Web Python](https://elysiatools.com/es/samples/web-string-processing-python): Ejemplos de procesamiento de cadenas Web Python incluyendo división/unión de cadenas, expresiones regulares y reemplazo de cadenas
