删除python中的字符串中的某些模式

时间:2013-09-20 16:29:26

标签: python json

我有以下json字符串:

{"date":12455}
{"date":12455,"out_date":45677}
{"date":Date(12455),"out_date":45677} #invalid json because of Date(...)
{"date":12455,"out_date":45677,"other_date":12345} #valid json because of Date(...)
{"date":12455,"foo":"bar"}
{"date":12455,"out_date":Date(45677),"other_date":Date(12345)} #invalid json because of Date(...)

基本上,有些字符串中我有“Date(...)”字段。 并非所有字符串都有它。 有些字符串有多次。

除了“替换(...)”之外​​还有更好的方法来替换所有“Date(...)”。 例如

{"date":12455,"out_date":Date(45677),"other_date":Date(12345)} becomes:
{"date":12455,"out_date":45677,"other_date":12345}

基本上,我想将这些jsons转换为有效的json ..

2 个答案:

答案 0 :(得分:2)

re.sub(r"Date\((.*?)\)", r"\1", input)

答案 1 :(得分:1)

In [1]: import re

In [7]: re.sub("Date\((.+?)\)",r"\1",'{"date":Date(12455),"out_date":45677}')
Out[7]: '{"date":12455,"out_date":45677}'