jmespath - 使用 JMESPath,根据数组值属性的长度过滤数组元素

标签 jmespath

给定这样的输入:

[
  {
    "a": "foo",
    "b": [ 1, 2, 3 ]
  },
  {
    "a": "bar",
    "b": [ ]
  },
  {
    "a": "baz",
    "b": [ 2 ]
  }
]

我想过滤掉其 b 属性具有零长度数组的元素,以给出:

[
  {
    "a": "foo",
    "b": [ 1, 2, 3 ]
  },
  {
    "a": "baz",
    "b": [ 2 ]
  }
]

如何使用 JMESPath 执行此操作?

最佳答案

你可以使用

[?length(b)>'0']

关于jmespath - 使用 JMESPath,根据数组值属性的长度过滤数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58009143/

相关文章:

jmespath - 有没有一种方法可以查询 jmespath 中的嵌套值而无需提供路径?

bash - 带有 bash 变量的 JMESPath 查询表达式

Azure CLI 查询 JMESPATH 多个表达式

python-3.x - 如何使用 starts_with jmespath.search 字典键

json - ansible json-query 路径以按内容选择项目

json - 返回列表中名字以某个值开头的对象

json - 使用 AZ CLI 提取应用服务计划 Azure 资源列表

python - 查询嵌套的 python 对象

json - 在 Ansible 中过滤 JSON 文档

json - 使用JMESPath,如何过滤至少定义了一个标签的Consul服务?