用/ Python替换\\

5 python replace

这不起作用:

import re
re.sub('\\', '/', "C:\\Users\\Judge")
Run Code Online (Sandbox Code Playgroud)

错误:

Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    re.sub('\\', '/', "C:\\Users")
  File "C:\Python27\lib\re.py", line 151, in sub
    return _compile(pattern, flags).sub(repl, string, count)
  File "C:\Python27\lib\re.py", line 244, in _compile
    raise error, v # invalid expression
error: bogus escape (end of line)
Run Code Online (Sandbox Code Playgroud)

Don*_*ner 7

尝试转义两个反斜杠而不是一个: \\\\

re.sub('\\\\', '/', "C:\\Users\\Judge")

你只是通过RE引擎一个反斜杠,这让它感到困惑.所以,你不仅要逃避Python的反斜杠才能获得快乐,你需要再次为RE逃脱它.由于你要逃避两个反斜杠,你需要总共四个.

如果你没有使用任何正则表达式功能,也许你最好使用string更简单的替换方法:

'C:\\Users\\Judge'.replace('\\', '/')