使用jq从多维JSON数组中选择第n个元素

9

如何使用jq转换此数组嵌套数组:

[
  [
    "sequence",
    "int"
  ],
  [
    "time",
    "string"
  ],
  ...
]

将包含每个子数组的第一个元素(0)的数组转换为输出,就像这样:

[
    "sequence",
    "time",
    ...
]

我想使用reduce xx as $item (...),但我没有想出任何有用的东西。


1
jq是一个C程序。为什么要标记为jQuery? - Lee Meador
你的意思是 jq 指的是 jQuery 吗? - MahanGM
我试图将其标记为jq,但现在我发现如果这样做,SO会将标记更改为jquery... 实际上你不能将某个东西标记为jq。 - Dreen
@Dreen - 以后参考一下,由于jq被定义为jquery的同义词在Stack Overflow的标签系统中,当您提交问题时它会被更改。我没有权利撤销这个操作(@SomeoneReadingThisWhoDoesHaveThisPrivilege - 我认为可以这样做,因为jq同义词从未被使用过),我已经为您创建了一个全新的jq-json-processor标签。 - Mathijs Flietstra
3个回答

5
您可以这样使用map过滤器:
jq 'map(.[0])'

现在,如何在结果上应用字符串插值? - ccpizza

1
另一个选项是jq '[.[][0]]',这会得到与使用map(.[0])相同的结果。

0

这里有一个使用reduce的解决方案

reduce .[] as $k ( null; . + [$k[0]] )

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接