В Python 3.x мне нужно заменить экранированные двойные кавычки в некотором тексте на некоторый пользовательский шаблон, оставив не экранированные двойные кавычки как есть. Поэтому я пишу в виде тривиального кода как:
text = 'These are "quotes", and these are \"escaped quotes\"'
print(re.sub(r'\"', '~', text))
И ожидаю увидеть:
These are "quotes", and these are ~escaped quotes~
Но вместо этого я получаю:
These are ~quotes~, and these are ~escaped quotes~
Итак,что является правильным шаблоном для замены только экранированных кавычек?
История этой проблемы - попытка прочитать «недопустимый» JSON-файл, содержащий в себе функцию Javascript, размещенный с переводами строк как есть, но сизбежавшие кавычек. Если есть более простой способ анализа JSON с символами новой строки в значениях ключей, я благодарен за подсказку.