Разработать драгоценный камень - не разрешать специальный символ в пароле - PullRequest
0 голосов
/ 28 ноября 2018

Я использовал devise gem для применения в рельсах.Формат пароля для проверки, который я нашел:

PASSWORD_FORMAT_USED_CURRENTLY = /\A
  (?=.{10,})          # Must contain 10 or more characters
  (?=.*\d)           # Must contain a digit
  (?=.*[a-z])        # Must contain a lower case character
  (?=.*[A-Z])        # Must contain an upper case character
  (?=.*[[:^alnum:]]) # Must contain a symbol
/x

Работает нормально, но я хочу выполнить два требования для моего пароля 1) пароль должен содержать не менее 6 букв (это могут быть заглавные буквы, строчные буквы, цифрыили их комбинация).

 PASSWORD_FORMAT = /\A
  (?=.{6,})          # Must contain 6 or more characters      
/x

2) второй критерий состоит в том, что пароль не должен содержать никаких специальных символов.

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

Заранее спасибо

1 Ответ

0 голосов
/ 28 ноября 2018

Второе регулярное выражение само будет обрабатывать оба случая.

 PASSWORD_FORMAT = /\A
  (?=.{6,})          # Must contain 6 or more characters
  (?=.*\w)           # Must contain capital letters, small letters, digits or a combination of all. Must not contain any special characters.
/x
...