Regex для подтверждения пароля - PullRequest
3 голосов
/ 14 марта 2012

Я искал здесь некоторые идеи, но мне все еще кажется, что я не могу придумать регулярное выражение для удовлетворения моих требований.

Мне нужно регулярное выражение для проверки формата пароля, критериевявляются:

  • Не менее 1 заглавной буквы
  • Не менее 1 цифры
  • Только буквенно-цифровые символы (без специальных символов)
  • Не менее 8 символовlong

Я использую регулярное выражение:

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d).{8,}$

Однако это также позволяет использовать такие символы, как !$&.

Есть ли модификация Iнужно сделать так, чтобы эти специальные символы не принимались?

1 Ответ

8 голосов
/ 14 марта 2012

Изменить последнюю часть .{8,} на [a-zA-Z\d]{8,}

 ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...