Этот класс для Java содержит валидатор:
http://www.leshazlewood.com/?p=23
Это написано создателем Сиро (формально Ки, формально JSecurity)
Плюсы и минусы проверки правильности адреса электронной почты:
Существует два типа регулярных выражений, которые проверяют электронную почту:
- Слишком свободные.
- Слишком строгие.
Невозможно, чтобы регулярное выражение совпадало со всеми действительными адресами электронной почты и без адресов электронной почты, которые недопустимы, поскольку некоторые строки могут выглядеть как действительные адреса электронной почты, но на самом деле не попадают в чей-либо почтовый ящик. Единственный способ проверить, является ли электронное письмо действительно действительным, - это отправить электронное письмо на этот адрес и посмотреть, получите ли вы какой-либо ответ. Имея это в виду, регулярные выражения, которые слишком строги в сопоставлении электронных писем, на самом деле, похоже, не имеют особой цели.
Я думаю, что большинство людей, которые запрашивают регулярное выражение по электронной почте, ищут первый вариант - слишком свободные выражения. Они хотят проверить строку и посмотреть, выглядит ли она как электронное письмо, если это определенно не электронное письмо, тогда они могут сказать пользователю: «Эй, вы должны поместить электронное письмо здесь, и это определенно неправильный адрес электронной почты. Возможно, вы не поняли, что это поле предназначено для электронной почты или, возможно, в нем есть опечатка ".
Если пользователь вставляет строку, которая очень похожа на действительное электронное письмо, но на самом деле это не одно письмо, то это проблема, которая должна решаться другой частью приложения.