У меня есть вложенный JSON-подобный документ в следующем формате, который я пытаюсь прочитать, используя python. Я пытаюсь поставить кавычки ("") вокруг нечисловых атомных значений. Я попытался использовать Python с регулярным выражением:
import re
valid_json = re.sub(r'(?<={|,)([a-zA-Z][a-zA-Z0-9]*)(?=:)', r'"\1"',
json_data)
Файл данных похож на:
{
"Attri1": 26789381,
"Attri2": hjewvbfasnd3672183knsa,
"Attri9": 457950,
"Attri10": [
{
"NestedAtri1": vwebsn632871yb,
"NestedAttri2": [
{
"A1": 0,
"A2": ABB1,
"A3": 30,
"A5": [
000,001
]
},
{
"A1": 0,
"A2": ABB1,
"A3": 30,
"A5": [
000,001
]
}
]
},
{
"NestedAtri1": rgdf3423,
"NestedAttri2": [
{
"A1": 0,
"A2": C,
"A3": 50,
"A5": [
000,001
]
},
{
"A1": 0,
"A2": ABB1,
"A3": 30,
"A5": [
000,001
]
}
]
}
]
}
Ожидаемый вывод с кавычками вокруг значений.
{
"Attri1": 26789381,
"Attri2": "hjewvbfasnd3672183knsa",
"Attri9": 457950,
"Attri10": [
{
"NestedAtri1": "vwebsn632871yb",
"NestedAttri2": [
{
"A1": 0,
"A2": "ABB1",
"A3": 30,
"A5": [
"000,001"
]
},
{
"A1": 0,
"A2": "ABB1",
"A3": 30,
"A5": [
"000,001"
]
}
]
},
{
"NestedAtri1": "rgdf3423",
"NestedAttri2": [
{
"A1": 0,
"A2": "C",
"A3": 50,
"A5": [
"000,001"
]
},
{
"A1": 0,
"A2": "ABB1",
"A3": 30,
"A5": [
"000,001"
]
}
]
}
]
}
Есть ли способ добавить кавычки, используя python / json или любые другие библиотеки. Или я могу использовать фильтры JQ, чтобы добавить цитаты.
Спасибо