我有一个正读和正在编译的正则表达式文件。我遇到的问题是正则表达式有时会导致\
。
Z\\d*\\.file_\\.?
代替
Z\d*\.file_\.?
有时匹配,但其他不匹配。
答案 0 :(得分:1)
当您使用原始字符串和双反斜杠时,很可能不匹配。
s = "ABC 23"
re.findall('\d+',s)
['23']
re.findall(r'\d+',s)
['23']
re.findall('\\d+',s)
['23']
re.findall(r'\\d+',s)
[]
答案 1 :(得分:0)
我不知道那是不是您想要的,但您是否读过documentation of regular expression operations
它说:
“正则表达式使用反斜杠字符('\')表示 特殊形式或允许不使用特殊字符 调用它们的特殊含义”
还有:
“解决方案是将Python的原始字符串表示法用于常规 表达模式反斜杠不以任何特殊方式处理 带有'r'“
前缀的字符串文字
示例:
regex= re.compile(r'string')