json数据:
{
"CHANNEL.chn-live_hh":{
"a":1,
"b":2
},
"CHANNEL.chn-live_bb":{
"a":1,
"b":2
},
"SINK.chn-live_bb":{
"a":1,
"b":2
}
}
jq解析filter:
to_entries|reduce .[] as $item
({"channel":[],"sink":[]};
if $item.key|startswith("CHANNEL")
then
.+{"channel":(.channel+[$item.key|capture("(?<topic>[a-z]+_.+)")+{"a":$item.value.a,"b":$item.value.b}])}
else
.
end)
解析结果:
{
"channel": [
{
"topic": "live_hh",
&