Как установить количество символов в нескольких группах регулярных выражений? - PullRequest
1 голос
/ 25 апреля 2019

У меня есть регулярное выражение, которое проверяет адреса электронной почты.

А как мне установить максимальное количество символов целого блока после @.

export const EMAILREGEX =
/^[ ]*[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]{1,64}@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*[ ]*$/;

1 Ответ

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

Вы можете использовать положительный взгляд вперед сразу после символа @ в своем регулярном выражении, чтобы указать минимальную максимальную длину части, которая следует за @ символом. Допустим, вы хотите, чтобы это было минимум 10 символов и максимум 20, тогда вы можете написать (?=.{10,20}$) сразу после @ в своем регулярном выражении. Вот как должно выглядеть ваше регулярное выражение:

/^[ ]*[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]{1,64}@(?=.{10,20}$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*[ ]*$/;

Здесь (?=) называется положительный взгляд вперед , а .{10,20}$ означает любой символ минимум 10 и максимум 20, за которым следует конец строки, обозначенный $

Вы также можете обратиться к этой публикации, чтобы ознакомиться с тем, как работают осмотры.

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