0

Regex de senha forte – regras de lookahead explicadas

Depure expressões regulares JavaScript ao vivo: correspondências destacadas, grupos de captura, sinalizadores e visualização de substituição.

Suporta $1, $2 e referências nomeadas como $<nome>; $& insere a correspondência inteira. Deixe em branco para ocultar a visualização.

Processando... 0%

Resultado

Esta página abre com um padrão de política de senha construído inteiramente a partir de lookaheads: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z0-9\s]).{8,}$. Cada (?=…) é uma verificação de largura zero que varre a linha inteira sem consumi-la: uma exige uma letra minúscula, uma uma letra maiúscula, uma um dígito, uma um caractere especial - e só então .{8,} impõe o comprimento mínimo.

Os sinalizadores são importantes aqui: m faz ^ e $ ancorarem cada linha em vez de todo o texto, e g encontra cada linha que se qualifica. Isso transforma o testador em uma lista de verificação – a amostra contém cinco senhas candidatas e apenas as linhas que satisfazem todas as quatro verificações se acendem. Veja rapidamente por que password123 falha (sem letras maiúsculas, sem caracteres especiais) enquanto Tr0ub4dor&3 é aprovado.

Lookaheads são a maneira padrão de expressar condições "deve conter X em algum lugar" em uma única expressão, e esta predefinição é um playground seguro para aprendê-las. Limite a política para mais de 12 caracteres, adicione uma verificação (?!.*(.)\1\1) contra repetições triplas ou cole uma lista de senhas candidatas reais — cada alteração é reavaliada instantaneamente e nada que você digita sai do seu navegador.