我正在尝试使用 Python 正则表达式和反向引用来实现字符串转义,但它似乎并不想很好地工作。我确定这是我做错了,但我不知道是什么...
>>> import re
>>> mystring = r"This is \n a test \r"
>>> p = re.compile( "\\\\(\\S)" )
>>> p.sub( "\\1", mystring )
'This is n a test r'
>>> p.sub( "\\\\\\1", mystring )
'This is \\n a test \\r'
>>> p.sub( "\\\\1", mystring )
'This is \\1 a test \\1'
我想将 \\[char] 替换为 \[char],但是 Python 中的反向引用似乎并不遵循它们在我曾经使用过的所有其他实现中所遵循的相同规则。有人可以解释一下吗?