如何在Jolt中对status数组进行字母降序排序?
Jolt实现status数组按字母降序排序
要实现将status数组按字母降序排序,让"REJECT"排在首位,你需要使用modify-overwrite-beta操作结合Jolt的sort函数,并指定降序参数。以下是完整的Jolt转换规则:
[ { "operation": "modify-overwrite-beta", "spec": { "*": { "status": "=sort(@(1,status),reverse:true)" } } } ]
规则说明:
- modify-overwrite-beta:用于对指定字段执行函数式修改,支持数组排序这类复杂操作
*:匹配输入数组中的每个对象(你的输入是包含单个对象的数组,这个通配符能精准定位到目标对象)=sort(@(1,status),reverse:true):=sort是Jolt内置排序函数,接收待排序数组和配置参数@(1,status)引用当前对象下的status数组作为排序数据源reverse:true开启降序排序,字母顺序更靠后的字符串会排在前面,因此"REJECT"会被放到数组首位
输入验证:
输入JSON:
[ { "status": [ "ERROR", "ERROR", "REJECT", "ERROR", "ERROR", "ERROR", "ERROR" ] } ]
转换后输出:
[ { "status": [ "REJECT", "ERROR", "ERROR", "ERROR", "ERROR", "ERROR", "ERROR" ] } ]
内容的提问来源于stack exchange,提问作者Mega
相关产品推荐
相关产品推荐

