请求协助:提取Google Sheets单元格中JSON格式的游戏数据
Google Sheets 提取JSON单元格指定数据方案
方法1:内置函数组合(轻量场景)
针对结构简单的JSON,直接用Google Sheets内置函数即可完成提取:
- 基础提取:使用
JSON_EXTRACT函数,指定JSON所在单元格和字段路径。例如JSON在A1单元格,提取kills字段:=JSON_EXTRACT(A1, "$.kills") - 转数值格式:如果提取结果是数字,套
VALUE函数转换:=VALUE(JSON_EXTRACT(A1, "$.kills")) - 嵌套字段提取:若目标字段在嵌套层级中(如
stats.kills),路径写成"$.stats.kills"即可。 - 正则兼容方案:如果内置JSON函数解析异常,用
REGEXEXTRACT匹配字段值。例如提取"kills": 123中的数值:=VALUE(REGEXEXTRACT(A1, "\"kills\":\s*(\d+)"))
方法2:自定义Apps Script脚本(复杂结构)
面对多层嵌套、字段多变的复杂JSON,自定义脚本更灵活:
- 打开表格,点击「扩展程序」→「Apps 脚本」
- 替换默认代码为以下脚本:
function GET_JSON_VALUE(jsonString, path) { try { const jsonObj = JSON.parse(jsonString); const pathSegments = path.split('.'); let targetValue = jsonObj; for (const seg of pathSegments) { targetValue = targetValue[seg]; if (targetValue === undefined) break; } return targetValue; } catch (err) { return "解析失败"; } }
- 保存脚本后,回到表格调用自定义函数。例如提取A2单元格JSON中
player.info.level字段:
=GET_JSON_VALUE(A2, "player.info.level")
批量提取与导出
要批量提取多字段并导出:
- 在首行依次输入要提取的字段名(如
kills、deaths、score) - 在第二行对应单元格输入提取公式(如
=GET_JSON_VALUE(A2, B1)),拖动填充完成批量提取 - 选中提取结果区域,点击「文件」→「下载」,选择CSV/Excel等格式导出
内容的提问来源于stack exchange,提问作者Gaming ala Pip
相关产品推荐
相关产品推荐

