如何在Jolt Transform中将Country字段值转为标题大小写?(尝试方案无效)
Jolt转换问题:将country字段转为标题大小写
需求
将所有country字段的值转换为标题大小写(例如:"russia" → "Russia")。
输入数据
[ { "name": "Mehari", "country": "russia", "age": 50 }, { "name": "Helen", "country": "Norway", "age": 20 }, { "name": "Abdu", "country": "India", "age": 30 } ]
已尝试的Jolt转换规则
[ { "operation": "modify-overwrite-beta", "spec": { "*": { "country": "=toTitleCase(@(1,&))" } } } ]
问题排查
上述规则未生效的核心原因是字段引用方式错误:@(1,&)的写法在modify-overwrite-beta操作中无法正确传递country字段的原始值给toTitleCase函数。虽然&代表当前键名,@(1,&)逻辑上指向目标字段,但实际未被函数正确解析,导致转换操作未执行。
正确方案
将引用方式改为@(直接指代当前字段的原始值),修改后的Jolt规则如下:
[ { "operation": "modify-overwrite-beta", "spec": { "*": { "country": "=toTitleCase(@)" } } } ]
执行后输出结果
[ { "name": "Mehari", "country": "Russia", "age": 50 }, { "name": "Helen", "country": "Norway", "age": 20 }, { "name": "Abdu", "country": "India", "age": 30 } ]
内容的提问来源于stack exchange,提问作者lion
相关产品推荐
相关产品推荐

