Чувствительность к регистру Regex не работает для Redux-Forms - PullRequest
0 голосов
/ 08 мая 2018

Я пытаюсь выполнить проверку пароля в сборке React / Redux с использованием Redux-Forms. Все работает отлично, за исключением того, что я не могу предотвратить пароли с хотя бы одной заглавной буквой. Вот мое регулярное выражение:

^(?=[A-Z])(?=.*?[0-9])(?=.*?[^\w\s]).+$

Он отлично работает в валидаторе регулярных выражений и в моем валидаторе форм, он работает за исключением заглавной буквы.

const password = value =>
 value && !/^(?=[A-Z])(?=.*?[0-9])(?=.*?[^\w\s]).+$/i.test(value)
  ? 'Passwords must at least 8 characters, include one capital letter, one number, and one special character:'
  : undefined;

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

У кого-нибудь есть идеи?

1 Ответ

0 голосов
/ 08 мая 2018

Ваше регулярное выражение имеет нечувствительное к регистру совпадение из-за флага / i в конце. Просто удалите /i в конце вашего регулярного выражения, чтобы сделать эту работу:

> /^(?=[A-Z])(?=.*?[0-9])(?=.*?[^\w\s]).+$/i.test('hello1*')
true
> /^(?=[A-Z])(?=.*?[0-9])(?=.*?[^\w\s]).+$/.test('hello1*')
false
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...