Я видел следующее регулярное выражение в Интернете.Регулярное выражение PHP для надежной проверки пароля
(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$
Он проверяет только если строка:
* contain at least (1) upper case letter
* contain at least (1) lower case letter
* contain at least (1) number or special character
* contain at least (8) characters in length
Я хотел бы знать, как преобразовать это регулярное выражение, так что он проверяет строку
* contain at least (2) upper case letter
* contain at least (2) lower case letter
* contain at least (2) digits
* contain at least (2) special character
* contain at least (8) characters in length
Ну, если он содержит по крайней мере 2 верхних, нижних, цифр и специальных символов, тогда я бы не нуждался в 8-значной длине.
Специальные символы включают в себя:.?
`~ @ # $%^& *() _- + = [] \ | {} ;: '»,/<>
Уточнитните * специальный символ *. Вы имеете в виду только: '! @ # $%^& *() -_ = + [{]} ;: '", <.> /? 'Или что-то еще? – Crozin
обновил вопрос с помощью кодировки специальных символов – Jason
Don «Вы ненавидите те веб-сайты, которые ограничивают сложность пароля» по соображениям безопасности »? Вы хотите установить« .evmhcfcyK »(легко запомнить, потому что это исходит из предложения), и вы получаете« abcd1234 », написанный в post-it note: –