RegEx скомпилировано с RFC 2822, 3.6.2
У меня проблема с тем, что SwiftMailer отклоняет электронные письма, содержащие точки либо в начале, либо в конце адреса (аналогично нескольким точкам внутри). Я хотел бы, чтобы мое приложение замечало такие проблемы.
Каким должно быть регулярное выражение для фильтрации неправильных адресов электронной почты? (под неправильным я подразумеваю те, которые не собраны со всем стандартом)
2 ответа
function check(mail) {
return !mail.match(/^\.|\.$/);
}
check('amshaegar@example.org'); // true
check('amshaegar@example.org.'); // false
check('.amshaegar@example.org'); // false
Функция check ожидает почтовый адрес в виде строки и проверяет, нет ли точки (.) В начале или конце.
Для определения нескольких точек (...) ваша функция будет выглядеть так:
function check(mail) {
return !mail.match(/^\.|\.{2,}|\.$/);
}
Следующее найдет точку в начале строки или в конце строки...
^\.|\.$