json Jolt转换,将嵌套对象中的空字符串替换为null

hgqdbh6s  于 2023-07-01  发布在  其他
关注(0)|答案(1)|浏览(233)

这是示例输入,还有其他各种键/值,我想保留

[
    {
        // other data
        "employees": [{
            // other data
            "hireDate": ""
        }]
    }
]

我试图将hireDate设置为null,如果它是“”或“”,并在两个对象中保留所有其他数据,我已经尝试了几个不同的变化后,看小时谷歌搜索和查看文档,但无法在每个雇员对象中保留其他数据键/值。我尝试的所有操作都会使员工数组为空。

{
    "operation": "shift",
    "spec": {
        "*": {
            "*": "[&1].&",
            "employees": {
                "": null,
                " ": null,
                "*": {
                    "@": "&"
                },
            }
        }
    }
}
dwbf0jvd

dwbf0jvd1#

如果你想设置一个包含空格的字符串的值,比如""" "" "等,那么你可以使用*trim*函数沿着modify转换,比如

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "*": {
        "employees": {
          "*": {
            "hD0": "=trim(@(1,hireDate))",
            "hD": "=size(@(1,hD0))"
          }
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "employees": {
          "*": {
            "hD": {
              "0": "&3[&2].hireDate",
              "*": { "@2,hireDate": "&4[&3].hireDate" }
            }
          }
        }
      }
    }
  }
]

相关问题