Есть ли способ сделать JSLint счастливым с помощью этого регулярного выражения?

При запуске моего JavaScript через JSLint я получаю следующие две ошибки из одной и той же строки кода.

Problem at line 398 character 29: Insecure '.'.

if (password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/))

Problem at line 398 character 41: Unescaped '^'.

if (password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/))

Я понимаю, что JSLint может быть слишком осторожным. Я читаю комментарии на похожий вопрос,Назначение опции JSLint «запретить небезопасное в регулярных выражениях».

Тем не менее, я хотел бы иметь лучшее из всех миров и иметь работающее регулярное выражение, которое также не вызывает жалоб JSLint.

Но я терплю неудачу в регулярных выражениях.

Можно ли создать регулярное выражение, которое ищет наличие хотя бы одного специального символа, но не вызывает жалоб JSLint?