. (点)
^ (脱字符)
$ (美元符号)
* (星号)
+ (加号)
? (问号)
[] (方括号)
[abc] 匹配 a、b 或 c。| (竖线)
a|b 匹配 a 或 b。() (圆括号)
(abc) 把 abc 作为一个整体进行匹配。\d
[0-9]。\D
[^0-9]。\w
[a-zA-Z0-9_]。\W
[^a-zA-Z0-9_]。\s
\S
{n}
n 次。例如,a{3} 匹配 aaa。{n,}
n 次。例如,a{2,} 匹配 aa、aaa 等。{n,m}
n 次,至多 m 次。例如,a{2,3} 匹配 aa 或 aaa。
def check(email):
'''
检查是否为邮件地址
:param email:
:return:
'''
regex = '^[a-z0-9]+[\._]?[a-z0-9]+[@]\w+[.]\w{2,3}$'
if re.search(regex, email):
return True
else:
return False
其中的:
^[a-z0-9]+[\._]?[a-z0-9]+[@]\w+[.]\w{2,3}$
我们逐部分解释它:
^
[a-z0-9]+
[\._]?
. 或下划线 _,这部分是可选的(零次或一次)。[a-z0-9]+
[@]
@ 符号。\w+
[.]
.。\w{2,3}
$
这个正则表达式整体上匹配的是一个典型的电子邮件地址格式。它确保电子邮件地址以一个或多个小写字母或数字开头,后面可以有一个点或下划线,再接一个或多个小写字母或数字,接着是 @ 符号,域名部分由一个或多个字母或数字字符组成,最后是一个点和 2 到 3 个字母或数字字符的顶级域名。