Мне нужно регулярное выражение, которое будет принимать корректные электронные письма в нескольких форматах (см. ниже), которые будут введены в список, разделенный запятыми. У меня есть основной адрес электронной почты регулярное выражение проверки,
^[\w\d._%+-][email protected](?:[\w\d-]+\.)+(\w{2,})(,|$)
который может обрабатывать тестовые примеры A и B, но не другие. Я также пробовал
^(\<)?[\w\d._%+-][email protected](?:[\w\d-]+\.)+(\w{2,})(\>)?(,|$)
который смог обрабатывать A, B и C, но только подтвердил первый адрес электронной почты в каждом из тестовых случаев D и E. Я даже не получил тестирование регулярного выражения для формата 3.
tl; dr Требуется регулярное выражение, которое будет проверять адреса электронной почты 1, 2 и 3.
Хороший сайт для проверки ваших регулярных выражений: Онлайн-тестер Javascript Regex Tester
Данные
Испытательные случаи
A. [email protected]
B. [email protected], [email protected]
C. <[email protected]>
, [email protected]
D. <[email protected]>, <[email protected]>
E. [email protected], <[email protected]>
Форматы адресов электронной почты
1. [email protected]
2. <[email protected]>
3. "xyz" <[email protected]>
ИЗМЕНИТЬ
Я отметил это как возможный дубликат:
Проверить адрес электронной почты на JavaScript?
который, в свою очередь, представляется дубликатом:
Использование регулярного выражения для проверки адреса электронной почты
оба из них содержат большое обсуждение правильности регулярного выражения как проверки подлинности электронной почты. Тем не менее, предоставленные сверху выраженные регулярные выражения, похоже, не совсем то, что я хочу, поэтому я не считаю это еще ответом.