Помогите с регуляркой
всем привет! использовал вот такую функцию для проверки email
function check_mail(mail) { return (/^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i).test(mail); } обнаружился один нехороший баг, функция не пропускает адреса вида mail@i.ua у самого не получается написать регулярку для проверки с таким условием, поэтому прошу помочь мне. |
tazododu, оно?
http://javascript.ru/forum/misc/9409...yrazhenie.html |
Вот тут предлагают такое решение...
var email='mail@i.ua' var reg = /^(([a-zA-Z0-9]|[!#$%\*\/\?\|^\{\}`~&'\+=-_])+\.)*([a-zA-Z0-9]|[!#$%\*\/\?\|^\{\}`~&'\+=-_])+@([a-zA-Z0-9-]+\.)+[a-zA-Z0-9-]+$/i if (!reg.test(email)) { alert ('Пожалуйста, введите корректный электронный адрес.'); } else { alert('Ok') } |
а чё, мне нравится
|
x-yuri, да ты гурман! :lol:
|
ksa
спасибо за ссылку на хороший ресурс. кстати, ваша регулярка пропускает майлы вида qqq@aa.r, sergey@0.1 Которые тоже являются не верными. x-yuri это конечно круто )) давайте попробуем допилить все-таки мою регулярку... |
Цитата:
|
Понапридумывали фигни всякой, а потом удивляются.)
Имхо /^[\w-.]+@[\w-.]+$/и не парить мозг. А все эти мегауточнения всё равно не имеют смысла, кому неохота писать мыло - его не напишет: aaa@bbb.cc и все дела. \upd вон даж движок форума схавал) |
Aetae,
если вы сокращаете проверку, то сокращайте нормально. Ваша регулярка не пропускает a+a@yandex.ru, я таким разработчикам лучи ненависти посылаю. |
Цитата:
|
Часовой пояс GMT +3, время: 22:54. |