Skip to content

JsonPath解析规则 ​

概述 ​

JsonPath 是一种用于从 JSON 文档中提取特定数据的查询语言,类似于 XPath 之于 XML。它允许通过路径表达式灵活地定位 JSON 结构中的元素(对象、数组、值)。

核心语法与操作符 ​

操作符含义示例说明
$根节点(当前文档根)$.store.book从根开始查找
.子节点(点记法)$.store.book标准对象属性访问
['key']子节点(括号记法)$['store']['book']当 key 含特殊字符或空格时使用
..递归下降(任意深度)$..author搜索所有层级的 author 字段
*通配符(所有元素/属性)$.store.*获取 store 下所有子节点
[n]数组索引(0-based)$.books[0]第一个元素
[n1,n2,...]多索引选择$.books[0,2,4]选择第 1、3、5 个
[start:end:step]数组切片$.books[1:4]$.books[::-1]索引 1~3(不含4);反向(部分支持)
[key1,key2]多属性选择$['id','name']返回多个指定字段

示例 ​

json
{
  "store": {
    "book": [
      {
        "category": "fiction",
        "title": "The Hobbit",
        "price": 15.5,
        "authors": [
          "Tolkien"
        ]
      },
      {
        "category": "science",
        "title": "Cosmos",
        "price": 25,
        "authors": [
          "Sagan",
          "Druyan"
        ]
      },
      {
        "category": "fiction",
        "title": "The Silmarillion",
        "price": 18,
        "authors": [
          "Tolkien"
        ]
      }
    ],
    "bicycle": {
      "color": "red",
      "price": 200
    }
  }
}