例如:我有一个类似
的字符串{"key": {"value": "this," is the "value" of guy""}}
我希望此字符串以一种格式出现,以便可以使用python的json.loads函数加载它。
{"key": {"value": "this, is the value of guy"}}
是否有任何内置的python函数可以执行此操作或正则表达式,我尝试了许多正则表达式,但是随着时间的推移,不同的字符串会变得越来越糟。
答案 0 :(得分:0)
您可以将re.sub
与超前模式一起使用,以匹配双引号和后跟冒号或右括号,并从外部引号中的引号中去除引号:
import re
s = '{"key": {"value": "this," is the "value" of guy""}}'
print(re.sub(r'"(.*?)"(?=\s*[:}\]])', lambda m: '"%s"' % m.group(1).replace('"', ''), s))
这将输出:
{"key": {"value": "this, is the value of guy"}}