我有以下样式格式json,我想将带有分隔符逗号的双引号中的值转换为元素数组。
我想转换的json字段是巨大的Json文件的一部分。
所以我需要找到字段
转换
Before
{"name": "john, jane, gordon, matthew"}
to
After
{"field": ["john","jane","gordon", "matthew"]}
答案 0 :(得分:1)
如果你的Json文件在一行中有条目,那么这个AWK程序适用于你的例子:
{
sub(": *",": [")
sub("}","]}")
gsub(", *","\",\"")
print
}
如果您的数据在一行中,请将sub
替换为gsub
。
答案 1 :(得分:0)
如果所有行都具有相似的格式,请尝试使用
awk '{print gensub(/\"/,"[","3")}' | awk '{print gensub(/\"}$/,"]}","")}' filename
答案 2 :(得分:0)
我认为sed在这种情况下也很好
A B C
1 1 3
2 1 3
3 0 0
4 0 0
5 0 0
1 1 3
2 1 3
3 2 3
4 2 3
5 0 0