json_path
json_path
函数使用 jsonpath
语法查找值。
该函数需要两个字符串。第一个字符串是用于查找值的 JSON 字符串。第二个字符串是 JSONPath 表达式。
json_path
始终返回一个值列表。如果 JSONPath 表达式未匹配到任何值,则返回一个空列表。
json_path
的常见用例是将 local.file
或 remote.http
组件的输出解码并过滤为 Alloy 语法值。
在将 JSON 字符串字面量传递给
json_path
时,请记住转义双引号。例如,JSON 值
{"key": "value"}
可以正确地表示为字符串"{\"key\": \"value\"}"
。
示例
> json_path("{\"key\": \"value\"}", ".key")
["value"]
> json_path("[{\"name\": \"Department\",\"value\": \"IT\"},{\"name\":\"TestStatus\",\"value\":\"Pending\"}]", "[?(@.name == \"Department\")].value")
["IT"]
> json_path("{\"key\": \"value\"}", ".nonexists")
[]
> json_path("{\"key\": \"value\"}", ".key")[0]
value