Регулярное выражение адреса электронной почты, ограниченный символ до и после символа @ - PullRequest
0 голосов
/ 28 мая 2020

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

/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

как мне ограничить количество символов перед @ до 64 и после @ до 64.

Ответы [ 2 ]

1 голос
/ 28 мая 2020

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

/^[a-zA-Z]{7}$/

Это выражение означает:

  • Один символ между AZ
  • Один символ между AZ
  • Наконец, соответствует ровно 7 раз -> {7}

Вы можете просто добавить свое регулярное выражение {64}, чтобы проверить, является ли оно длиной 64 символа или нет.

0 голосов
/ 28 мая 2020

Два варианта:

  1. После долгого теста регулярного выражения выполните второй тест регулярного выражения на длину:

    /^.{1,64}@.{1,64}$)$/

  2. Префикс положительного просмотра вперед к вашему регулярному выражению:

    /(?=^.{1,64}@.{1,64}$)^(YOUR REGEX)$/

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