Кто-нибудь знает, как заменить все \ на \\ на python?
Ive попытался:
re.sub('\','\\',string)
Но он закручивает его из-за escape-последовательности.
кто-нибудь знает оленя на мой вопрос?
Ответ 1
Вам просто нужно избежать обратных косых черт в ваших строках: (также нет необходимости в материалах регулярных выражений)
>>> s = "cats \\ dogs"
>>> print s
cats \ dogs
>>> print s.replace("\\", "\\\\")
cats \\ dogs
Ответ 2
вам следует:
re.sub(r'\\', r'\\\\', string)
Поскольку r'\' не является допустимой строкой
Кстати, вы всегда должны использовать строки raw (r'') с регулярным выражением, так как многие вещи выполняются с обратными косыми чертами.
Ответ 3
Вам либо нужно re.sub("\\\\","\\\\\\\\",string), либо re.sub(r'\\', r'\\\\', string), потому что вам нужно избежать каждой косой черты дважды... один раз для строки и один раз для регулярного выражения.