Regex de contraseña segura: explicación de las reglas de anticipación
Depure expresiones regulares de JavaScript en vivo: coincidencias resaltadas, grupos de captura, indicadores y vista previa de reemplazo.
Resultado
Esta página se abre con un patrón de política de contraseñas creado completamente a partir de búsquedas anticipadas: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z0-9\s]).{8,}$. Cada (?=…) es una verificación de ancho cero que escanea toda la línea sin consumirla: uno exige una letra minúscula, otro una letra mayúscula, uno un dígito, uno un carácter especial, y solo entonces .{8,} aplica la longitud mínima.
Las banderas importan aquí: m hace que ^ y $ anclan cada línea en lugar de todo el texto, y g encuentra cada línea que califica. Eso convierte al probador en una lista de verificación: la muestra contiene cinco contraseñas candidatas y solo se iluminan las líneas que satisfacen las cuatro búsquedas anticipadas. Vea de un vistazo por qué falla la contraseña 123 (sin mayúsculas ni caracteres especiales) mientras pasa Tr0ub4dor&3.
Las miradas anticipadas son la forma estándar de expresar las condiciones "debe contener X en algún lugar" en una sola expresión, y este ajuste preestablecido es un campo de juego seguro para aprenderlas. Ajuste la política a más de 12 caracteres, agregue una verificación (?!.*(.)\1\1) contra repeticiones triples o pegue una lista de contraseñas candidatas reales: cada cambio se reevalúa instantáneamente y nada de lo que escriba sale de su navegador.