Existe uma maneira de fazer JSLint feliz com este regex?
Ao executar meu JavaScript por meio do JSLint, recebo os dois erros a seguir na mesma linha de código.
Problem at line 398 character 29: Insecure '.'.
if (password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/))
Problem at line 398 character 41: Unescaped '^'.
if (password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/))
Entendo que o JSLint pode estar sendo "muito cauteloso". Eu li os comentários sobre uma pergunta semelhante,Objetivo da opção JSLint "não permitir inseguro em regex".
No entanto, eu gostaria de ter o melhor de todos os mundos e ter uma expressão regular que também não faça com que o JSLint se queixe.
Mas eu falho no regex.
É possível criar expressões regulares que procurem a presença de pelo menos um caractere especial, mas que não façam com que o JSLint se queixe?