【发布时间】:2018-03-21 15:38:55
【问题描述】:
是否可以使用jq 将recursive-descent 结果收集到单个数组中?
flatten 会帮忙吗?在我看来是这样,但我就是无法让它工作。看看我现在在https://jqplay.org/s/6bxD-Wq0QE 有多远,任何人都可以让它工作吗?
顺便说一句,
-
.data.search.edges[].node | {name, topics: ..|.topics?}有效,但我希望来自同一节点的所有主题都在一个数组中,而不是在所有不同的返回结果中具有相同的name。 -
flatten一个人会给我Cannot iterate over null,并且 - 这就是我尝试使用
map(select(.? != null))过滤nulls 的原因。但是,我的map-select也会得到Cannot iterate over null。
所以现在一切都归结为如何过滤掉那些nulls?
更新:,“收集到单个数组中”我的意思是得到这样的东西:
[
{
"name": "leumi-leumicard-bank-data-scraper",
"topics": ["banking", "leumi", "api", "puppeteer", "scraper", "open-api"]
}
]
而不是在所有不同的返回结果中重复相同的name。因此,在我看来,递归下降似乎是一种选择,但只要我能得到上述结果,我对任何解决方案都持开放态度。那可能吗?谢谢。
【问题讨论】:
-
发布最终预期结果
-
请遵循 stackoverflow.com/help/mcve 上的指南
标签: json jq collect recursive-descent