【发布时间】:2020-03-06 14:12:19
【问题描述】:
我正在将 json 数据解析为 python 中的 SQL 查询,并且需要注意用双引号替换单引号,因为我得到的数据的符号是错误的(我无法更改) .我遇到的问题是,一些字符串是英文文本并包含单引号。
'comment': 'bla bla it's you're can't bla bla',
我如何只替换书面文本中的那些而不是定义属性的那些?正则表达式会是什么样子?
【问题讨论】:
-
TL;DR:这与有效的 JSON 相去甚远。如果它应该是,这个 really 必须固定在始发端。如果那是不可能的,那么你有点 SOL。不能保证完全可以安全地解析这样的内容。
-
我真的很想知道这些可疑 JSON 的来源。就像在几乎所有编程语言都存在完美的库时,他们认为可以将这些怪物释放到野外一样。
-
我真的不知道为什么我会从我正在访问的 API 中得到这个无效的 JSON,但我无法在接收之前更改它。只是认为可能有解决方法。
-
要么您以某种方式误解了您从该 API 获得的信息,要么您真的需要与该 API 的作者取得联系,并与他们谈谈一些道理。
-
我正在访问的 API 是 Google 的 API 之一。我无法提供任何转储,因为它是敏感数据,但我刚刚通过 Google 的示例请求进行了检查,我得到了相同的无效 json。在他们的支持下进行检查。也许我错过了一些问题。
标签: python json regex parsing escaping