如何使用Jolt移除值为NA或NV的特定字段x2
使用Jolt移除值为"NA"或"NV"的x2字段
输入JSON
{ "data": { "a1": "value1", "a2": "value1", "a3": "value1", "collection": [ { "events": [ { "x1": 123, "x2": "NA", "x3": 5678 }, { "x1": 432, "x2": 854, "x3": 912 } ] } ] } }
Jolt转换规格
[ { "operation": "shift", "spec": { "data": { "*": "&", "collection": { "*": { "events": { "*": { "x1": "&3.&2.&1.x1", "x2": { "!NA": "&4.&3.&2.&1.x2", "!NV": "&4.&3.&2.&1.x2" }, "x3": "&3.&2.&1.x3" } } } } } } } ]
转换后输出
{ "data": { "a1": "value1", "a2": "value1", "a3": "value1", "collection": [ { "events": [ { "x1": 123, "x3": 5678 }, { "x1": 432, "x2": 854, "x3": 912 } ] } ] } }
规则说明
- 用
shift操作重构JSON结构,精准保留需要的字段 "*": "&"直接保留data下除collection外的所有字段- 针对
collection和events数组,用*遍历每一个元素 - 对
x2字段,通过!NA和!NV的条件判断,只有当值不是这两个字符串时,才将其映射到原路径,否则直接忽略该字段 &n表示向上回溯n层的键名,用来维持原有的层级结构不变
内容的提问来源于stack exchange,提问作者Sreejith P.S
相关产品推荐
相关产品推荐

