json数组中一个元素的数组,Nifi
Array for one element in Array of json, Nifi
我有以下输入 json:
{
"ListArray": [
{
"address": "address1",
"contact": "123456789",
"bpId": 123
},
{
"address": "address2",
"contact": "135792468",
"bpId": 456
},
{
"address": "address3",
"contact": "246812356",
"bpId": 678
}
]
}
我正在使用以下规范表达式:
[
{
"operation": "shift",
"spec": {
"ListArray": {
"*": {
"*": "&"
}
}
}
}
]
给我这样的输出:
{
"Address_list": ["address1","address2","address3"],
"Contact_list": ["123456789","135792468","246812356"],
"Id_list": [123,456,678]
}
但是,如果输入(jsons的数组)只有一个json,例如:
{
"ListArray": [
{
"address": "address1",
"contact": "123456789",
"bpId": 123
}
]
}
然后我得到以下输出
{
"Address_list": "address1",
"Contact_list": "123456789",
"Id_list": 123
}
对于一个元素,数组未形成。即使只有一个元素,我也希望输出在一个数组中。
提前谢谢。
只需稍作改动,将 .[]
附加到当前存在的符号 (&
) 即可解决此问题,例如
[
{
"operation": "shift",
"spec": {
"ListArray": {
"*": {
"*": "&.[]"
}
}
}
}
]
我有以下输入 json:
{
"ListArray": [
{
"address": "address1",
"contact": "123456789",
"bpId": 123
},
{
"address": "address2",
"contact": "135792468",
"bpId": 456
},
{
"address": "address3",
"contact": "246812356",
"bpId": 678
}
]
}
我正在使用以下规范表达式:
[
{
"operation": "shift",
"spec": {
"ListArray": {
"*": {
"*": "&"
}
}
}
}
]
给我这样的输出:
{
"Address_list": ["address1","address2","address3"],
"Contact_list": ["123456789","135792468","246812356"],
"Id_list": [123,456,678]
}
但是,如果输入(jsons的数组)只有一个json,例如:
{
"ListArray": [
{
"address": "address1",
"contact": "123456789",
"bpId": 123
}
]
}
然后我得到以下输出
{
"Address_list": "address1",
"Contact_list": "123456789",
"Id_list": 123
}
对于一个元素,数组未形成。即使只有一个元素,我也希望输出在一个数组中。 提前谢谢。
只需稍作改动,将 .[]
附加到当前存在的符号 (&
) 即可解决此问题,例如
[
{
"operation": "shift",
"spec": {
"ListArray": {
"*": {
"*": "&.[]"
}
}
}
}
]