[英]Python regex error with tuple. Works with list. Bad escape (end of pattern)
我在字典中有一个列表 ,其中存放了正则表达式,程序按预期运行。 但是,当我将列表转换为元组时,在位置0处出现错误的错误转义(模式结束)。
下面给出了错误。
import re
phone_num = '660-349-6829'
dict20 = {"phone": (r'\d{3}[-\.\s]??\d{3}[-\.\s]??\d{4}|\(\d{3}\)\s*\d{3}[-\.\s]??\d{4}|\d{3}[-\.\s]??\d{4}')}
for k in dict20["phone"]:
print(k)
results = re.findall(k, phone_num)
print(results)
self.string, len(self.string) - 1) from None
sre_constants.error: bad escape (end of pattern) at position 0
这很好用(注释列表而不是元组)。
import re
phone_num = '660-349-6829'
dict20 = {"phone": [r'\d{3}[-\.\s]??\d{3}[-\.\s]??\d{4}|\(\d{3}\)\s*\d{3}[-\.\s]??\d{4}|\d{3}[-\.\s]??\d{4}']}
for k in dict20["phone"]:
print(k)
results = re.findall(k, phone_num)
print(results)
那不是元组-只是括号。 您必须在')'之前添加逗号以使其成为元组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.