我有这个JSON:
{"item":2, "url":"domain/house/23/bedroom"}
我正在尝试使用jq获取此新的JSON:
{"item":2, "number":"23", "room":"bedroom"}
是否可以在jq中执行此操作?第一步,我尝试使用捕获功能来捕获“ / house /”之后的子字符串,但这不起作用:
cat myjson.json | jq -c '{item:.item,substring:(.url | capture("/house/.*").substring)}'
是否可以提取两个值并将它们放在两个不同的字段中?
答案 0 :(得分:5)
用斜杠将url
分割,并使用结果生成新字段。
{item} + (.url/"/"|{number:.[-2],room:.[-1]})