Jquery Validate и Regex - PullRequest
       3

Jquery Validate и Regex

0 голосов
/ 24 января 2019

Я знаю, что этот вопрос был задан до смерти, но ни один из ответов, похоже, не работает, поэтому не знаю, является ли его плагин проблемой или мой код. Я использую плагин JQuery Validate, проверил документацию по регулярному выражению и уверен, что у меня все правильно. Однако, когда я набираю test1234 или TEST1234 в качестве пароля, плагин validate, кажется, принимает его как пароль, когда я прямо сказал, что я хочу в моем регулярном выражении 1 заглавную, 1 строчную, 1 цифру и 8-12 символов. По иронии судьбы, когда я набираю 7-символьный пароль, он срабатывает, если я использую только цифры и сопоставляю 8 символов, он срабатывает.

Может ли кто-нибудь перепроверить код, указанный ниже, в порядке? Я также попробовал следующее:

^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9]).{8,12}$
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,12}$



<!--
(                   # Start of group
(?=.*\d)        #   must contain at least one digit
(?=.*[A-Z])     #   must contain at least one uppercase character
(?=.*\W)        #   must contain at least one special symbol
   .            #   match anything with previous condition checking
{8,12}          #   length at least 8 characters and also maximum of 12
)               #   End of group

 -->


 $().ready(function () {

$.validator.addMethod("PASSWORD", function (value, element) {
  return this.optional(element) || /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,12}$/i.test(value);
}, "Passwords are 8-12 characters with uppercase letters, lowercase letters and at least one number.");

// Validate signup form on keyup and submit
$("#cp").validate({
    rules: {
      new_pass1: "required PASSWORD",
      new_pass2: {required: true, equalTo: "#new_pass1"}
  },
});
});

1 Ответ

0 голосов
/ 25 января 2019

Просто уберите флаг i. Флаг «i» включает поиск без учета регистра. Так и должно быть:

/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,12}$/.test(value)

Проверьте это: https://jsfiddle.net/djanym/0xrkgnsL/12/

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