转义re.sub

时间:2018-04-20 13:54:18

标签: python regex

我想确保repl的{​​{1}}参数被转义,以便不会解释像re.sub这样的特殊序列:

\1

是否有可以执行此操作的功能?我知道re.escape存在,是否应该使用?

1 个答案:

答案 0 :(得分:4)

请勿将>>> repl = r'\1' >>> re.sub('(X)', repl, 'X') 'X' >>> re.sub('(X)', desired_escape_function(repl), 'X') '\\1' 用于此目的。 re.escape旨在用于re.escape参数,而不是pattern参数。

相反,请关注the advice of Python's documentation,然后手动用两个反斜杠替换所有反斜杠:

repl