Suppose I have the following string:
example = '{"Hello": "world", "key_1": ""Double quote text"", "key_2", ""}'
This is not a properly created JSON object, thus when I try to load it:
json.loads(example)
I get an error
JSONDecodeError: Expecting ',' delimiter: line 1 column 29 (char 28)
I've obviously tried to example.replace('""', '"')
, but this, fixes key_1
, but breaks key_2
.
How can I remove the double quote in key_1
, without removing it from key_2
?
CodePudding user response:
you can use this pattern and python regex sub
re.sub(r"(\"\"([^\"]*)\"\")",r'"\2"',example)
this pattern will find any sets of ""string""
that have data between them and replace is it with a "string"
a cleaner pattern would be this:
'(\"{2}([^\"]*)\"{2})'