0

我有一个字符串数组:

"Street": ["10 First Avenue","Third Floor"]

我想使用 jsonata 转换为对象数组: https ://try.jsonata.org/

"street": [
    {
        "attributes": {"line": "1"},
        "text": "10 First Avenue"
    },
    {
        "attributes": {"line": "2"},
        "text": "Third Floor"
    }
]

当我假设一个固定长度但存在差异并且我不确定如何获取索引时,我让它工作。

我可以使用它

Street @ $street.$.[
    {
        "attributes": {"line": "1"},
        "text": $street
    }
]

但我仍然没有行号

4

1 回答 1

1

您可以使用运算符捕获序列中的位置#。这是一个数字,因此如果需要,您需要将其转换为字符串:

Street @ $street #$i.{
    "attributes": {"line": $string($i+1)},
    "text": $street
}

https://try.jsonata.org/Q5Tt46GBT

于 2021-07-20T11:22:25.820 回答