正则表达式用于匹配电子邮件地址

时间:2018-12-17 19:47:50

标签: python regex

所以我有一个正则表达式,如下所示:

 regex1= re.compile(r'\S+@\S+')

这很好用,但是我想增加一个字符数限制,所以字符总数必须少于20个。

我尝试了re.compile(r'\S+@\S+{5,20}'),但它一直给我一个错误。看起来像一个简单的修复程序,但看不到我在做什么错。

1 个答案:

答案 0 :(得分:2)

您不能指定带有特定数量字符(即+无效的模式)的贪婪修饰符(\S+{5,20))。如果您使用python进行此操作,建议您除了对正则表达式进行验证之外,仅对字符串使用len(...)函数。例如:

if regex1.match(email) and (len(email) < 20):
    ...