Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Распознавание e-mal'а (http://forum.oszone.net/showthread.php?t=31998)

ivank 29-03-2002 23:01 218061

Кто как это делает? Где можно найти хороший (действительно распознающий правильные/неправильные адреса) код.

Пока мне в голову приходит только что-то типа:
Код:

/^(([a-zA-Z][a-zA-Z0-9\-_\.]*)\@(([a-zA-Z][a-zA-Z0-9\-]*\.)+)([a-zA-Z]{2,4}))$/
И какой RFC описывает стандарт на e-mail адреса? А то их так много...

SandroK 30-03-2002 13:40 218062

http://www.isc.org/ml-archives/bind-.../msg00555.html
Здесь кое что есть, про стандарты.

BeerMan 02-04-2002 02:11 218063

...пользовал такую подпрограмму... взял с какого то руководства по Перл...
Код:

sub verify_email {
 * *local($emails) = $_[0];

 * *if ($emails =~ /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)|(\.$)/ ||
 * * * *($emails !~ /^.+\@localhost$/ &&
 * * * * $emails !~ /^.+\@\[?(\w|[-.])+\.[a-zA-Z]{2,3}|[0-9]{1,3}\]?$/)) {
 * * * *return(0);
 * *}

 * *else {
 * * * *return(1);
 * *}
}

...пояснения нужны???

vasketsov 02-04-2002 09:17 218064

BeerMan
а домены из русских букв?

ivank 02-04-2002 09:17 218065

BeerMan
Да всё понятно, вот только e-mail типа: Kul-xackep@some..host..com оно примет за настоящий, а так же если доменное имя будет в зоне из четырёх букв, но оно скажет, что оно не правильно, попробуй just-a-man@host.info.

Добавлено:

vasketsov
А что значит: "домены для русских букв"?

Добавлено:

На счёт двух точек наврал, ссори.

vasketsov 02-04-2002 12:13 218066

ivank
Цитата:

домены ИЗ русских букв
типа многие уже регистрируют.
правда, не знаю как это работает.

ivank 02-04-2002 19:59 218067

vasketsov
Пусть регистрируют, но что делать, если мне нужно на русский сайт кока-колы из... Сингапура, к примеру, зайти? Я так понимаю это будет http://кока-кола.ру, или что-то в этом духе? А в Сингупуре (напоминаю) клав с русской раскладкой очень немного... И будет мне большой облом.

Кстати, \w, если стоит русская локаль, означает русские и английские буквы. Поэтому в своём варианте я и прописал вездк [a-zA-Z] вместо простого \w.


Время: 03:16.

Время: 03:16.
© OSzone.net 2001-