Подтвердить что ты не робот

Регулярное выражение для проверки пароля

Может ли кто-нибудь помочь мне в создании регулярного выражения для проверки пароля.

Условие: "Пароль должен содержать 8 символов и хотя бы одно число, одну букву и один уникальный символ, например !#$%&? "

4b9b3361

Ответ 1

^.*(?=.{8,})(?=.*[a-zA-Z])(?=.*\d)(?=.*[!#$%&? "]).*$

---

^.*              : Start
(?=.{8,})        : Length
(?=.*[a-zA-Z])   : Letters
(?=.*\d)         : Digits
(?=.*[!#$%&? "]) : Special characters
.*$              : End

Ответ 2

Попробуйте это

((?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[\W]).{6,20})

Описание выше Регулярное выражение:

(           # Start of group
  (?=.*\d)      #   must contains one digit from 0-9
  (?=.*[a-z])       #   must contains one lowercase characters
  (?=.*[\W])        #   must contains at least one special character
              .     #     match anything with previous condition checking
                {8,20}  #        length at least 8 characters and maximum of 20 
)           # End of group

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

Ответ 3

Вы можете легко достичь каждого из индивидуальных требований (например, минимум 8 символов: .{8,} будет соответствовать 8 или более символам).

Чтобы объединить их, вы можете использовать "позитивный взгляд" для применения нескольких подвыражений к одному и тому же контенту. Что-то вроде (?=.*\d.*).{8,} для соответствия одной (или более) цифрам с lookahead и 8 или более символами.

Итак:

(?=.*\d.*)(?=.*[a-zA-Z].*)(?=.*[!#\$%&\?].*).{8,}

Вспомним, как избежать метасимволов.

Ответ 4

Пароль со следующими условиями:

  • Не менее 1 цифры
  • Не менее 2 специальных символов
  • Как минимум 1 буквенный символ
  • Без пробела

    'use strict';
    (function() {
        var foo = '3g^g$';
    
        console.log(/^(?=.*\d)(?=(.*\W){2})(?=.*[a-zA-Z])(?!.*\s).{1,15}$/.test(foo));
    
        /**
         * (?=.*\d)         should contain at least 1 digit
         * (?=(.*\W){2})    should contain at least 2 special characters
         * (?=.*[a-zA-Z])   should contain at least 1 alphabetic character
         * (?!.*\s)         should not contain any blank space
         */
    })();
    

Ответ 5

Вы можете создать собственное регулярное выражение для валидации javascript;

        (/^
        (?=.*\d)                //should contain at least one digit
        (?=.*[a-z])             //should contain at least one lower case
        (?=.*[A-Z])             //should contain at least one upper case
        [a-zA-Z0-9]{8,}         //should contain at least 8 from the mentioned characters

        $/)

Пример: - /^(?=.*\d)(?=.*[a-zA-Z])[a-zA-Z0-9]{7,}$/