Проверка достоверности электронной почты в django / python [duplicate]
На этот вопрос уже есть ответ:
Как проверить адрес электронной почты с помощью регулярного выражения? 71 ответЯ написал функцию для добавления писем в базу рассылки. Пока я не добавил проверку достоверности отправленного электронного письма, оно работало безупречно. Теперь каждый раз я получаю «Неправильное письмо» взамен. Кто-нибудь может увидеть здесь какие-либо ошибки? Используемое регулярное выражение:
\b[\w\.-]+@[\w\.-]+\.\w{2,4}\b
и он действителен на 100% http: //gskinner.com/RegExr), но я могу использовать его неправильно, или это может быть логическая ошибка:
def newsletter_add(request):
if request.method == "POST":
try:
e = NewsletterEmails.objects.get(email = request.POST['email'])
message = _(u"Email is already added.")
type = "error"
except NewsletterEmails.DoesNotExist:
if validateEmail(request.POST['email']):
try:
e = NewsletterEmails(email = request.POST['email'])
except DoesNotExist:
pass
message = _(u"Email added.")
type = "success"
e.save()
else:
message = _(u"Wrong email")
type = "error"
import re
def validateEmail(email):
if len(email) > 6:
if re.match('\b[\w\.-]+@[\w\.-]+\.\w{2,4}\b', email) != None:
return 1
return 0