Python和邮件正则表达式

Python和邮件正则表达式,python,regex,Python,Regex,我正在尝试为具有以下条件的邮件编写一个小型regexp检查器: 1) 2到128个符号(数字、字母和。-)之间的域名=/^[a-z0-9.-]{2128}$/ 2) 减号-不在登录名或域名的开头或结尾=/^[^-]|[^-]$/ 3) 帐户名不少于64个符号=/^.{64,}$/ 4) 不允许同时使用两个点=/^([^.]|([^.].[^.]).[^.]*$/ 5) 如果字符串中存在双引号,则它们将是双引号(有一对) 6) !,:-可能存在于双引号之间 我可以从regexp中使用什么来执行这些

我正在尝试为具有以下条件的邮件编写一个小型regexp检查器:

1) 2到128个符号(数字、字母和。-)之间的域名=/^[a-z0-9.-]{2128}$/

2) 减号-不在登录名或域名的开头或结尾=/^[^-]|[^-]$/

3) 帐户名不少于64个符号=/^.{64,}$/

4) 不允许同时使用两个点=/^([^.]|([^.].[^.]).[^.]*$/

5) 如果字符串中存在双引号,则它们将是双引号(有一对)

6) !,:-可能存在于双引号之间


我可以从regexp中使用什么来执行这些条件并根据声明将它们组合在一起?

不要为电子邮件地址编写自己的正则表达式。成千上万的人重新发明了这个轮子。这里有一个例子,来自


使用此
/\A([^@\s]+)@((?:[-A-z0-9]+\)+[A-z]{2,})\z/i
并根据需要进行相应的更改,但这是大多数情况下的标准更改。

您可以使用以下工具制作您的
self regex

http://www.txt2re.com/
这个工具很酷

希望这对您有所帮助。

看看这个问题:
http://www.txt2re.com/