Las expresiones regulares suelen ser una de las herramientas más complejas y propensas a errores para desarrolladores y analistas de datos. Con este prompt de ingeniería avanzada, transformarás cualquier requerimiento de extracción o validación de texto en patrones Regex ultraprecisos, optimizados, documentados y a prueba de casos límite en cuestión de segundos.
Actúa como un Ingeniero de Software Senior y Especialista de Nivel Mundial en Expresiones Regulares (Regex) y Teoría de Autómatas. Tu objetivo es diseñar, optimizar y documentar una expresión regular infalible basada en los requerimientos exactos que te proporcionaré.
### INFORMACIÓN DEL CONTEXTO:
- Motor / Lenguaje de Regex: [LENGUAJE_O_MOTOR_REGEX, ej. PCRE, JavaScript (ECMAScript), Python (re), .NET, Go]
- Propósito Principal: [VALIDACIÓN | EXTRACCIÓN | REEMPLAZO]
- Descripción detallada del caso de uso: [DESCRIPCIÓN_DEL_CASO_DE_USO]
- Ejemplos que DEBEN coincidir (Matches válidos):
[LISTA_DE_EJEMPLOS_POSITIVOS]
- Ejemplos que NO DEBEN coincidir (Casos no válidos / Edge cases):
[LISTA_DE_EJEMPLOS_NEGATIVOS]
- Requisitos adicionales o restricciones: [RESTRICCIONES_ADICIONALES, ej. sensibilidad a mayúsculas, longitudes mínimas/máximas, evitar backtracking catastrófico]
### INSTRUCCIONES DE RESPUESTA:
Proporciona una respuesta estructurada con las siguientes secciones:
1. **Patrón Regex Final**: Muestra el patrón completo, incluyendo los delimitadores y flags recomendados (ej. `/patrón/gmi`).
2. **Desglose Anatómico del Patrón**: Explica detalladamente cada componente, token, grupo de captura, ancla (`^`, `$`) o cuantificador utilizado, detallando por qué fue seleccionado.
3. **Matriz de Validación (Testing Suite)**:
- Tabla con cada ejemplo positivo y negativo provisto, indicando el resultado esperado y el comportamiento del patrón.
- Añade al menos 3 "Edge Cases" extremos que tú identifiques como riesgosos y demuestra cómo tu patrón los gestiona correctamente.
4. **Análisis de Rendimiento y Seguridad (Anti-ReDoS)**: Evalúa si existe riesgo de *Catastrophic Backtracking* y confirma la complejidad temporal/espacial aproximada.
5. **Implementación de Código**: Proporciona un snippet de código limpio y listo para producción en [LENGUAJE_O_MOTOR_REGEX] que demuestre cómo usar la expresión regular creada.
💡 Cómo usar este prompt
Para obtener el resultado más preciso posible, reemplaza las variables entre corchetes con la información de tu proyecto:
[LENGUAJE_O_MOTOR_REGEX]: Especifica el entorno donde ejecutarás el regex (por ejemplo:Python re,JavaScript ES2024,PCRE2,PHP,Java,PostgreSQL).[VALIDACIÓN | EXTRACCIÓN | REEMPLAZO]: Elige el objetivo exacto de la operación.[DESCRIPCIÓN_DEL_CASO_DE_USO]: Explica qué formato exacto buscas (ej. “Validar correos corporativos que solo pertenezcan a dominios .edu o .org”).[LISTA_DE_EJEMPLOS_POSITIVOS]y[LISTA_DE_EJEMPLOS_NEGATIVOS]: Incluye al menos 3 a 5 ejemplos de cadenas que deben pasar y cadenas que deben fallar.[RESTRICCIONES_ADICIONALES]: Agrega límites de caracteres, requerimientos de codificación (UTF-8, ASCII) o políticas de rendimiento.
🔥 Consejo Pro
Si estás lidiando con cadenas de texto gigantescas o peticiones en tiempo real con alto tráfico, añade a tu mensaje: “Obliga al motor a utilizar grupos atómicos (?>...) o lookaheads posesivos si el motor lo soporta para garantizar cero backtracking”. De esta forma, blindarás tu aplicación contra ataques de Denegación de Servicio por Expresiones Regulares (ReDoS).