Регулярное выражение проверки email (PHP)

интернет php html регулярные выражения email

Нашел ответ на интересующий меня вопрос по ссылке - http://otvety.google.ru/otvety/thread?tid=11cf4cff1393d190 .
Но он не учитывает варианты когда в адресе к примеру 2 точки рядом или клиент отправил многострочный текст.

Примечание:
Vint25, не панятна. Объясните. Там какое-то слишком длинное выражение.

Примечание:
Maelstrom, "Но он не учитывает варианты когда в адресе к примеру 2 точки рядом или клиент отправил многострочный текст."

Примечание:
Vint25, что-то мне подсказывает, что оно очень долго работать будет.

Примечание:
Epsiloncool, ваш код натолкнул меня на мысль. Предлагаю так:

^[a-z0-9]+([_-\.]*[a-z0-9]+)*@[a-z0-9]+([_-\.]*[a-z0-9]+)\.([a-z]{2,6})&

Все-таки 2 точке в адресе может быть, mail.ru позволяет такое делать.
Осталось решить вопрос многострочности.

Примечание:
У меня PHP что-то ругается на вот-эту строчку - [_-\.]
А вот такой вариант работает прекрасно - /^[a-z0-9]+([\x2d\x5f\x2e]+[a-z0-9]+)*@[a-z0-9]+([\x2d\x5f\x2e]+[a-z0-9]+)\.([a-z]{2,6})&/

куда кликать, если мой ответ я считаю лучшим? :)
Ответы:
([\w-\.]+)@((?:[\w]+\.)+)([a-zA-Z]{2,4}) ;)
http://php.spb.ru/other/mail.txt
Вот выражение на все случаи жизни.
function isEmailValid($str) {
    return (preg_match("/[a-z0-9_-]+(\.[a-z0-9_-]+)*@([0-9a-z][0-9a-z-]*[0-9a-z]\.)+([a-z]{2,4})/i", $str));
}
В чём вопрос многострочности ? Формализуйте требование.


14 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.