判断一个数组是否有元素,Nifi
Determine whether or not an array has element, Nifi
我有以下 json:
{
"a":[1,2,3,4],
"b":[]
}
我想知道数组是否有元素。
因此所需的期望输出是:
{
"a":[1,2,3,4],
"b":[],
"is_element_in_a":True,
"is_element_in_b":False
}
这个的 jolt 规范表达式是什么?
您可以使用 modify-overwrite-beta transformation spec 以及 size 函数来确定列表的大小是否zero 或 not 第一步,然后使用 shift 转换规范打印 布尔值 条件逻辑中的值,例如
[
{
"operation": "modify-overwrite-beta",
"spec": {
"in_a": "=size(@(1,a))",
"in_b": "=size(@(1,b))"
}
},
{
"operation": "shift",
"spec": {
"*": "&",
"in_*": {
"0": {
"#False": "is_element_&2"
},
"*": {
"#True": "is_element_&2"
}
}
}
}
]
我有以下 json:
{
"a":[1,2,3,4],
"b":[]
}
我想知道数组是否有元素。 因此所需的期望输出是:
{
"a":[1,2,3,4],
"b":[],
"is_element_in_a":True,
"is_element_in_b":False
}
这个的 jolt 规范表达式是什么?
您可以使用 modify-overwrite-beta transformation spec 以及 size 函数来确定列表的大小是否zero 或 not 第一步,然后使用 shift 转换规范打印 布尔值 条件逻辑中的值,例如
[
{
"operation": "modify-overwrite-beta",
"spec": {
"in_a": "=size(@(1,a))",
"in_b": "=size(@(1,b))"
}
},
{
"operation": "shift",
"spec": {
"*": "&",
"in_*": {
"0": {
"#False": "is_element_&2"
},
"*": {
"#True": "is_element_&2"
}
}
}
}
]