JSON按路径取值/设值/删除
JSON 输入
输出
不需要记完整 JSONPath / jq 语法时,用点号路径最省事。本工具支持三种操作——取值、设值(右侧输出整份改写后的 JSON)、删除——适合改配置、抽字段、删敏感键。
设值时「设值内容」须为合法 JSON(字符串请加引号,如 "Beijing";数字、布尔、对象、数组按 JSON 写法填写)。
路径用英文句点 . 分隔每一层键名;访问数组元素时,下标写成纯数字段(从 0 开始)。从根对象往下逐层定位,不需要写开头的 $,也不是 JSON Pointer 的 /a/b 写法。
user、user.profile.citytags.0(第一个元素)、items.2.id与常见语法的区别:
$、..、[?()]、* 等.[]、| 管道/user/name,应写成 user.name.,当前语法无法区分「一层键」与「多层路径」,请避免对这类键使用本工具假设输入 JSON 为:
{
"user": {
"id": 9007199254740993,
"profile": { "city": "Shanghai", "score": 9007199254740993.9900 },
"tags": ["json", "tools"]
},
"items": [
{ "id": 1, "name": "a" },
{ "id": 2, "name": "b" }
]
}
user → 整个 user 对象user.id → 9007199254740993user.profile.city → "Shanghai"user.tags → ["json", "tools"]user.tags.0 → "json"(数组第 1 个)user.tags.1 → "tools"(数组第 2 个)items.1.name → "b"user.profile.city,输出 "Shanghai"user.profile.city,设值内容 "Beijing"user.tags.0 会删掉 "json"