Una IA propone un patrón para buscar nombres de archivos PDF. Acepta el primer ejemplo y parece listo. Pero ¿acepta también una copia que termina en .pdf.bak o un nombre con otra letra donde debería estar el punto? Un único acierto no responde a esas preguntas.
Escribe la regla antes del patrón
Para este ejercicio, acepta exactamente el prefijo invoice_, tres dígitos del 0 al 9 y .pdf, con las minúsculas indicadas. Debe coincidir el nombre completo, sin la ruta de una carpeta. Son los requisitos del ejemplo, no una norma para todos los PDF.
Indica al asistente qué herramienta ejecutará la expresión. En Python, re.search busca una coincidencia en alguna parte de la cadena; re.fullmatch exige que coincida toda. El punto también tiene un significado especial si no se trata como literal. Otras herramientas pueden usar sintaxis y opciones distintas.
Decide estos resultados antes de probar:
invoice_007.pdf: aceptar.invoice_07.pdf: rechazar; solo hay dos dígitos.xinvoice_007.pdf: rechazar; sobra un prefijo.invoice_007Xpdf: rechazar; falta el punto literal.invoice_007.pdf.bak: rechazar; sobra texto al final.Invoice_007.PDF: rechazar según esta regla que distingue mayúsculas.
Separa la selección de los cambios
Ejecuta el patrón sobre cadenas de ejemplo y compara cada resultado con la lista. Pide una explicación de las discrepancias y repite todos los casos después de corregirlo, no solo el que fallaba. NIST describe cómo las respuestas generadas pueden apartarse de lo pedido con aparente seguridad; una explicación convincente no sustituye a la prueba.
Solo cuando la selección sea correcta, plantea renombrar o mover archivos. Primero genera una lista de cambios propuestos, revísala y conserva una copia recuperable. Acertar con el patrón no comprueba si dos archivos acabarían con el mismo nombre ni si realmente querías modificar esos archivos.