Google Sheets数组公式解析JSON提取hash值逗号拼接方法
Google Sheets 批量提取JSON中hash字段实现方案
你只需要在B1单元格输入以下数组公式,回车后即可自动批量处理A列所有单元格内容,无需手动下拉填充:
=ARRAYFORMULA(IF(A:A="","",BYROW(A:A,LAMBDA(cell_content,IF(cell_content="","",TEXTJOIN(",",TRUE,REGEXEXTRACTALL(cell_content,"""hash"":""([^""]+)""")))))))
公式逻辑说明
- 外层
ARRAYFORMULA负责整列批量计算,公式输入一次即可自动覆盖B列所有对应行 - 两层
IF判断用于过滤A列空单元格,避免无数据行生成错误值 BYROW按行遍历A列每个单元格,将单个单元格的JSON内容传入内层处理逻辑REGEXEXTRACTALL通过正则规则匹配JSON中所有"hash":"字段值"结构,提取所有hash值生成数组TEXTJOIN将提取到的多个hash值用英文逗号拼接为单个字符串,自动跳过空匹配项
效果验证
对于给出的示例数据,公式输出完全符合预期:
B1单元格输出:
2Qk1xsOqhlxUe5d3fiJVcXgBLaBODegmo,1W2HdCGmeMLz1u0kzvxdUhGyEwIUlMD-s
B2单元格输出:5Qk1xsOqhlxUe5d3fiJVcXgBLaBODegmo,4W2HdCGmeMLz1u0kzvxdUhGyEwIUlMD-s
注意事项
- 该公式全部使用Google Sheets原生函数,不需要编写自定义脚本、不需要调用第三方接口,输入即可生效
- 公式适配标准无转义的JSON结构,如果JSON中hash字段存在转义引号等特殊格式,可对应微调正则匹配规则即可
内容的提问来源于stack exchange,提问作者O1R
相关产品推荐
相关产品推荐

