json - Jolt Transformation - 小写 JSON 列表中的所有键
问题描述
如何将此json列表中的所有键转换为小写
[
{
"KEY01": "1111",
"KEY02": "VALUE01",
"KEY03": true
},
{
"KEY01": "2222",
"KEY02": "VALUE02",
"KEY03": true
}
]
期望的结果
[
{
"key01": "1111",
"key02": "VALUE01",
"key03": true
},
{
"key01": "2222",
"key02": "VALUE02",
"key03": true
}
]
我使用了这个颠簸转换公式,它只生成了一个对象,其值只被转换为小写
[
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": "=toLower"
}
}
}
]
结果
[{
"KEY01": "1111",
"KEY02": "value01",
"KEY03": true
}, {
"KEY01": "2222",
"KEY02": "value02",
"KEY03": true
}]
解决方案
这会产生所需的结果:
[
{
"operation": "shift",
"spec": {
"*": {
"*": {
"$": "[&2].&1.key",
"@": "[&2].&1.value"
}
}
}
},
{
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"*": {
"key": "=toLower"
}
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"*": {
"value": "[&2].@(1,key)"
}
}
}
}
]
产生以下内容:
[
{
"key01" : "1111",
"key02" : "VALUE01",
"key03" : true
},
{
"key01" : "2222",
"key02" : "VALUE02",
"key03" : true
}
]
推荐阅读
- android - 如果我在 Play 商店中加载应用程序,Google Drive Api 不起作用
- ios - 在 SwiftUI 中控制嵌套 UIView 的惯用方式是什么
- java - 使用带有 Scanner() 函数的 Hashmaps
- tensorflow - keras 中的自定义损失函数 - 使用 K.minimum 实现的问题
- reactjs - React Native:模块RCTLog不是注册的可调用模块(调用logIfNoNativeHook)
- ios - “AppDelegate”类型的IOS开发值没有成员“managedObjectContext”Xcode 10
- python - 模块“h5py”没有属性“string_dtype”
- sql - R中的SQL内部联接
- jenkins - VSTS 管道类似于 Jenkins 的 buildwithParameter?
- javascript - 为什么 create-react-app 别名无法从文件夹中找到 index.js?