Regexp Java для проверки пароля - PullRequest
       23

Regexp Java для проверки пароля

96 голосов
/ 27 сентября 2010

Я создаю регулярное выражение для проверки пароля, которое будет использоваться в приложении Java в качестве параметра конфигурации.

Регулярное выражение:

^.*(?=.{8,})(?=..*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$

Политика паролей:

  • Не менее 8 символов

  • Содержит хотя бы одну цифру

  • Содержит как минимум один нижний альфа-символ и один верхний альфа-символ

  • Содержит как минимум один символ в наборе специальных символов (@#%$^ и т. Д.)

  • Не содержит пробела, табуляции и т. Д.

Мне не хватает только пункта 5. Я не могу выполнить проверку регулярного выражения для пробела, табуляции, возврата каретки и т. Д.

Может ли кто-нибудь мне помочь?

Ответы [ 12 ]

0 голосов
/ 01 декабря 2017

easy one

("^ (? =. * [0-9]) (? =. * [Az]) (? =. * [AZ]) (? =. * [\\ W _]) [\\ S] {8,10} $ ")

  1. (? = Что-нибудь) -> означает положительный взгляд вперед во всей входной строке и убедитесь, что это условие записано.sample (? =. * [0-9]) -> означает, что во всей строке записано однозначное число. if не записано return false .
  2. (?! что-нибудь) -> (наоборот) означает отрицательный взгляд вперед, если условие записано return false .

    close означает ^ (условие)условие) (условие) (условие) [\ S] {8,10} $

0 голосов
/ 29 июля 2015

Я думаю, что это может сделать это также (как более простой режим):

^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])[^\s]{8,}$

[Regex Demo]

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