You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求将带层级分隔符的扁平JSON转换为嵌套JSON的通用逻辑

通用实现思路

要把这种用冒号做层级分隔的扁平JSON转成嵌套结构,核心是拆分键的层级,逐层构建嵌套字典,通用步骤如下:

  • 先创建一个空的目标字典,用来存放最终的嵌套结果。
  • 遍历扁平字典里的每一组键值对:
    1. 把当前键按分隔符(这里是冒号)拆分成层级列表,比如"address:street"会拆成["address", "street"]。
    2. 初始化一个临时指针,指向目标字典(相当于当前操作的父节点)。
    3. 遍历拆分后的层级列表,但跳过最后一个元素:
      • 如果当前层级的键不在临时指针指向的字典里,就给这个键创建一个空字典作为值。
      • 把临时指针移动到这个新创建(或已存在)的子字典上,进入下一层级。
    4. 把最后一个层级的键和对应的值,赋值给当前临时指针指向的字典。
  • 所有键值对处理完后,目标字典就是你要的嵌套结构。

举个逻辑示例:处理"address:number":10时,拆分得到["address", "number"],先检查目标字典里有没有address,如果有就把指针移到address对应的字典,然后给这个字典添加"number":10;如果没有address,就先创建{"address":{}},再移指针进去赋值。

这个思路能处理任意深度的嵌套,也兼容重复层级的键(比如多个address:开头的键会自动合并到同一个address字典下)。

内容的提问来源于stack exchange,提问作者iAmoric

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 02:20:41