如何使用JMESPath查询列表值及筛选特定前缀元素
给定指定数据结构,如何筛选以network开头的值?
先看你提供的JSON数据:
{ "Imports": [ "network-secgrp", "bastion", "network-nacl" ] }
要筛选出以network开头的元素,用JMESPath的starts_with函数结合过滤语法就能搞定,表达式如下:
Imports[?starts_with(@, 'network')]
给你拆解一下这个表达式:
Imports:先定位到我们要操作的列表;[?...]:这是JMESPath的过滤语法,用来筛选列表中符合条件的元素;@:代表当前正在遍历的列表元素;starts_with(@, 'network'):判断当前元素是否以network开头,符合条件的元素会被保留下来。
执行这个表达式后,得到的结果就是:
[ "network-secgrp", "network-nacl" ]
内容的提问来源于stack exchange,提问作者chizou
相关产品推荐
相关产品推荐

