我在Python 3.6.5中遇到了re
模块的问题。
我的正则表达式中有这种模式:
'\\nRevision: (\d+)\\n'
但是当我运行它时,我得到了DeprecationWarning
。
我搜索了the problem on SO,但实际上还没找到答案 - 我应该使用什么而不是\d+
?只是[0-9]+
或者其他什么?
答案 0 :(得分:59)
Python 3将字符串文字解释为Unicode字符串,因此您的\ d被视为转义的Unicode字符。
将您的RegEx模式声明为原始字符串,而不是预先r
,如下所示:
r'\nRevision: (\d+)\n'
这也意味着您可以删除\n
的转义符,因为re
只会将其解析为换行符。