从给定JSON中的特定键获取所有嵌套值

时间:2020-07-22 12:08:31

标签: json jq

我试图在json数组中获取英格兰和威尔士值中的日期的所有日期值。像这样的数组(除了它具有更多的值)json数组在这里:{{ 3}}

{"england-and-wales":{"division":"england-and-wales","events":[{"title":"New Year’s Day","date":"2015-01-01","notes":"","bunting":true}},{"title":"Good Friday","date":"2015-04-03","notes":"","bunting":false}]},"scotland":{"division":"scotla
nd","events":[{"title":"New Year’s Day","date":"2015-01-01","notes":"","bunting":true},{"title":"2nd January","date":"2015-01-02","notes":"","bunting":true},{"title":"Good Friday","date":"2
015-04-03","notes":"","bunting":false},{"title":"Early May bank holiday","date":"2015-05-04","notes":"","bunting":true}

如下所述,将选择所有日期:

curl -s https://www.gov.uk/bank-holidays.json | jq '.. | .date? // empty'

我不确定如何只在英格兰和威尔士数组中选择日期吗?

1 个答案:

答案 0 :(得分:0)

要高效地获取“英格兰和威尔士”的日期,请按以下步骤操作:

.["england-and-wales"] | .events[] | .date

如果您希望这些内容经过排序和“唯一化”,只需延迟逐项([]):

.["england-and-wales"] | .events | map(.date) | unique[]
相关问题