Помогите с регуляркой
всем привет! использовал вот такую функцию для проверки 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, время: 05:03. |