регулярное выражение с условием и суффиксом - PullRequest
0 голосов
/ 28 ноября 2018

Мне нужна помощь, чтобы создать регулярное выражение, которое фильтрует строки, имеющие как минимум одну цифру, заглавную букву, одну строчную букву и оканчивается на "@ xyz.sd". Я пробовал это до сих пор,

(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z0-9@\.]{12,25}

Это полное заполнение всех условий, кроме части "@ xyz.sd".Я пытался сделать это,

(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z0-9@\.]+(@xyz.sd){12,25}

Но это не работает.

1 Ответ

0 голосов
/ 28 ноября 2018

Вы можете использовать другой взгляд, и вам нужно использовать якоря:

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*@xyz\.sd$)[a-zA-Z0-9@.]{12,25}$

Или лучше использовать это регулярное выражение:

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z0-9@.]{5,18}@xyz\.sd$

Используемый диапазон квантификаторов {5,18} вместо {12,25}, поскольку 7 символов будут использованы @xyz.sd.

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