Explicar expresiones regulares complejas paso a paso

Desglosa patrones ajenos símbolo por símbolo para entender su significado

Prompt · 2 variables

No tengo mucha experiencia leyendo expresiones regulares. Necesito entender con precisión qué cadenas acepta y cuáles rechaza el siguiente patrón encontrado en mi código.

Por favor, desglosa la expresión regular de izquierda a derecha en unidades lógicas y explícala paso a paso. No comiences con un resumen general: analiza cada fragmento por separado y combínalos al final.

Usa el siguiente formato: primero, una tabla con las columnas "Fragmento · Nombre del símbolo · Función · Qué cambiaría si se elimina este fragmento"; luego, el significado global en una sola frase; finalmente, indica si cada cadena de prueba coincide o no, especificando en qué fragmento se aprueba o se bloquea.

No incluyas funciones o reglas que no existan realmente en el patrón. Si contiene símbolos cuyo comportamiento varía según el lenguaje o motor de regex (como lookbehinds o propiedades Unicode), indícalo claramente en su fila correspondiente.

Expresión regular: """ {{expresion regular valida}} """

Cadenas de prueba: """ {{cadena de texto}} """

Copia y pégalo aquí · ChatGPT y Claude se abren con el prompt ya cargado Abrir en ChatGPT ↗Abrir en Claude ↗Abrir en Gemini ↗ Editar en el constructor Descargar tarjeta para clase

Por qué está escrito así

Contexto
No tengo mucha experiencia leyendo expresiones regulares. Necesito entender con precisión qué cadenas acepta y cuáles rechaza el siguiente patrón encontrado en mi código.
Pasos
Por favor, desglosa la expresión regular de izquierda a derecha en unidades lógicas y explícala paso a paso. No comiences con un resumen general: analiza cada fragmento por separado y combínalos al final.
Formato
Usa el siguiente formato: primero, una tabla con las columnas "Fragmento · Nombre del símbolo · Función · Qué cambiaría si se elimina este fragmento"; luego, el significado global en una sola frase; finalmente, indica si cada cadena de prueba coincide o no, especificando en qué fragmento se aprueba o se bloquea.
Restricciones
No incluyas funciones o reglas que no existan realmente en el patrón. Si contiene símbolos cuyo comportamiento varía según el lenguaje o motor de regex (como lookbehinds o propiedades Unicode), indícalo claramente en su fila correspondiente.
Material
Expresión regular: """ {{expresion regular valida}} """
Material
Cadenas de prueba: """ {{cadena de texto}} """

Al pedirle a una IA que explique una expresión regular, casi siempre responde con una sola frase genérica: "Es una expresión regular para validar contraseñas". Aunque sea cierto, esto no ayuda a trabajar con el código. Si necesitas cambiar la longitud mínima de 8 a 10 caracteres, no sabrás qué número modificar, ni entenderás por qué no se aceptan ciertos caracteres especiales.

Por eso, este prompt impone un proceso por pasos. Frases clave como "de izquierda a derecha en unidades lógicas" y "no comiences con un resumen general" evitan que el modelo salte fragmentos importantes o adapte forzadamente la explicación a su propia conclusión inicial. Al obligarlo a mirar pieza por pieza, elementos difíciles de notar a simple vista (como los lookaheads) quedan registrados en la tabla, y queda claro cómo emparejan las llaves de repetición o los corchetes de conjuntos de caracteres.

En cuanto al formato, la columna "Qué cambiaría si se elimina este fragmento" es el corazón del prompt. Una tabla que solo describe conceptos teóricos se olvida rápido; en cambio, ver el impacto directo de omitir cada parte permite identificar al instante qué ajustar. Evaluar las cadenas de prueba al final sirve para el mismo fin: comprobar la explicación con datos reales.

Delimitar la expresión y las cadenas con """ evita que los caracteres especiales (comillas, barras invertidas, llaves) confundan al modelo sobre los límites del patrón, e impide que el texto de prueba se interprete como una instrucción adicional. Si estás aprendiendo a leer regex, prueba a borrar un fragmento tras ver la tabla y observa cómo cambia el resultado.

¿Términos desconocidos? Consulta Aha AI: chain-of-thought, prompt

Comparado con un mal ejemplo

Mal ejemplo habitual

¿Qué hace esta regex? ^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d!@#$%^&*]{8,20}$

Recibirás una respuesta de una línea como: "Sirve para validar contraseñas de 8 a 20 caracteres con letras y números". Aunque es correcta, sigues sin saber para qué sirven los dos primeros paréntesis o qué evalúa {8,20}. Si quieres cambiar una condición, tendrás que volver a preguntar desde cero. Además, al no incluir ejemplos reales, no hay forma de verificar si la explicación concuerda con su comportamiento práctico.

Variaciones

Cuando un valor esperado no coincide

Cuando un valor esperado no coincide

La siguiente expresión regular no coincide con los valores indicados abajo. Explica paso a paso, de izquierda a derecha, en qué fragmento falla y por qué. Luego, muestra el patrón corregido para que acepte estos valores, explicando qué parte se modificó y si el nuevo patrón podría aceptar valores que antes debían bloquearse.

Expresión regular: """ {{expresion regular valida}} """

Valores de prueba: """ {{cadena de texto}} """

Úsalo para depurar en lugar de solo interpretar. Si no se pide advertir sobre valores no deseados, la IA podría relajar el patrón en exceso.

Para redactar un comentario en el código

Para redactar un comentario en el código

Resume la siguiente expresión regular en un comentario claro para el código fuente. En un máximo de tres líneas, describe qué acepta, qué rechaza e incluye dos ejemplos representativos (uno válido y uno inválido). No expliques cada símbolo individualmente.

""" {{expresion regular valida}} """

Diseñado para documentar código para futuros desarrolladores. Se limita a tres líneas porque los comentarios extensos rara vez se leen.

Notas por modelo

La sintaxis de las expresiones regulares varía según el lenguaje de programación o motor. Agregar una línea en el primer párrafo indicando el entorno de ejecución (ej. JavaScript, Python, PCRE) evitará explicaciones incompatibles.

Prompts relacionados

Última actualización 2026-09-02 · ¿Has visto un error? Avísanos