JSONPath 查询工具
输入 JSON 数据和 JSONPath 表达式,实时提取匹配结果,支持完整 JSONPath 语法
$
JSON 数据
查询结果 0 条
关于 JSONPath 查询工具
- JSONPath 是用于从 JSON 数据中提取特定节点的查询语言,类似于 XPath 对 XML 的作用
- 广泛用于 API 响应数据提取、JSON 数据分析、测试断言、数据转换等场景
- 本工具使用纯前端实现,支持 JSONPath 核心语法,无需安装任何工具
操作说明
- 在左侧粘贴 JSON 数据,在顶部输入框输入 JSONPath 表达式(
$前缀已自动添加),点击「查询」或按 Ctrl+Enter - 点击「示例」加载书店 JSON 示例数据,并填入示例表达式
- 右侧显示匹配结果(JSON 数组格式)和匹配数量,支持一键复制
注意事项
- 本工具实现了 JSONPath 核心语法,复杂的脚本表达式(
[?(@.price > 10)])支持基本比较运算 - 路径不存在时返回空数组
[],不报错 - 所有处理均在浏览器本地完成,不会上传任何数据
JSONPath 知识详解
JSONPath 语法速查
| 表达式 | 说明 | 示例 |
|---|---|---|
$ | 根节点 | $ → 整个文档 |
.key | 子节点 | $.store.name |
[n] | 数组下标(0起) | $.books[0] |
[*] | 所有元素 | $.books[*].title |
.. | 递归下降 | $..title → 所有 title |
[a,b] | 多个下标 | $.books[0,2] |
[a:b] | 切片 | $.books[0:2] |
[?(@.x)] | 过滤表达式 | $.books[?(@.price < 10)] |
常见查询模式示例
| 场景 | JSONPath 表达式 |
|---|---|
| 获取所有用户邮箱 | $.users[*].email |
| 获取第一个元素 | $.items[0] |
| 递归查找所有 id | $..id |
| 过滤价格 > 100 的商品 | $.items[?(@.price > 100)] |
| 获取最后一个元素 | $.items[-1:] |
| 获取前3个元素 | $.items[0:3] |