json 字符串有两个反斜杠 无法解析

json.loads都会自动去掉用作转义的反斜杠   \ "转换成 " 成为正常能被json解析的(不带转义)字符,

但是如果是两个反斜杠只能转成单个反斜杠,这样就不能解析出来

解决方法

1.使用eval函数

eval
  功能:将字符串str当成有效的表达式来求值并返回计算结果。
  语法: eval(source[, globals[, locals]]) -> value
  参数:
    source:一个Python表达式或函数compile()返回的代码对象
    globals:可选。必须是dictionary
    locals:可选。任意map对象
 

str = """{\\"name\\":4}"""
str2 = eval("'{}'".format(str))

 

2 正则表达式

str1 = re.sub(r'\\','',token)
print(str1)
print(json.loads(str1)

输出

{"traqlkja": "hb001", "okrrwmqg": "krg123456", "ranmlg": 7200.0, "beqrs_seja": ""}

{"traqlkja": "hb001", "okrrwmqg": "krg123456", "ranmlg": 7200.0, "beqrs_seja": ""}

 

参考 https://blog.csdn.net/shenkunchang1877/article/details/79086886

 

 

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:5 天前 )
960b763e 2 个月前
8c391e04 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐