У меня есть следующее регулярное выражение:Регулярное выражение для силы пароль одним специальными символами, кроме Underscore
^.*(?=^.{8,}$)(?=.*\d)(?=.*[[email protected]#$%^&*-])(?=.*[A-Z])(?=.*[a-z]).*$
Я использую его, чтобы проверить для
По крайней мере одна буква
хотя бы одна заглавная буква
не более одного номера
наименее специальные символы
наименее 8 символов
Но вместе с этим мне нужно ограничить подчеркивание (_
). Если я ввожу пароль Pa$sw0rd
, это верно проверяется, что верно. Если я вхожу Pa$_sw0rd
, это также верно проверяется, что неправильно.
Дело в том, что регулярное выражение проходит, когда выполняются все правила. Я хочу, чтобы правило ограничивало подчеркивание вместе с выше.
Любая помощь будет очень заметной.
там не должно быть '_' ?????? – vks
Имея одно регулярное выражение для каждого из требований, все это упростило бы кодирование, понимание, обновление и поддержку. – Kusalananda