所以我有一个正则表达式,如下所示:
regex1= re.compile(r'\S+@\S+')
这很好用,但是我想增加一个字符数限制,所以字符总数必须少于20个。
我尝试了re.compile(r'\S+@\S+{5,20}')
,但它一直给我一个错误。看起来像一个简单的修复程序,但看不到我在做什么错。
答案 0 :(得分:2)
您不能指定带有特定数量字符(即+
无效的模式)的贪婪修饰符(\S+{5,20)
)。如果您使用python进行此操作,建议您除了对正则表达式进行验证之外,仅对字符串使用len(...)
函数。例如:
if regex1.match(email) and (len(email) < 20):
...