如何从 json 中删除格式错误的转义反斜杠?

How to remove malformatted escaped backslashes from json?

给定一个包含大量 arrays/objects 的 json 文件,变量 _json 等于以下内容:

{
   "response":{
      "data":[
         {
            "a":"Foo",
            "b":"Bar",
            "name":"\\""John Doe\\""",
            "gender":"male"
         }
      ]
   }
}

当我运行 json.loads(_json)['response']['data'], python 抛出异常:

json.decoder.JSONDecodeError: Expecting ',' delimiter

在 json 字符串之前放置 r 不起作用,因为似乎 json.loads 仍然在转义时阻塞,因为错误发生在此处 "John Doe\\""" .也可能有反斜杠较多的情况。

有没有办法删除这些反斜杠?也许用正则表达式?

如果有任何反馈,我将不胜感激。谢谢!

字符串无效 json。上游修复它。如果你想在这里修补它,那么这应该可以解决问题:

json.loads(_json.replace('\\"',''))['response']['data']