Я пытаюсь превратить строку, которая должна быть разделена на основе пространства и превращена в массив объектов. Помогите, пожалуйста, как мне его сформировать.
Вход
field: YYC:16:26 YVR:16:03 YEG:13:43
Ожидаемый результат
"details" : [
{
"field" : "YYC",
"time" : "16:26"
},
{
"field" : "YVR",
"Time" : "16:03"
},
{
"field" : "YEG",
"Time" : "13:43"
}
]
Другой подход, аналогичный решению Анурага.
ДВ
%dw 2.0
output application/json
var test= "YYC:16:26 YVR:16:03 YEG:13:43" splitBy " "
---
details: test map ((item, index) ->
{
"field": (item splitBy ":")[0],
"Time": (item splitBy ":")[1 to -1] joinBy ":"
})
Выход
{
"details": [
{
"field": "YYC",
"Time": "16:26"
},
{
"field": "YVR",
"Time": "16:03"
},
{
"field": "YEG",
"Time": "13:43"
}
]
}
Небольшой поворот к тому, что опубликовал Картик:
%dw 2.0
output application/json
import * from dw::core::Arrays
var test= "YYC:16:26 YVR:16:03 YEG:13:43" splitBy " "
---
details: test map
{
"field": ($ splitBy ":")[0],
"Time": drop(($ splitBy ":"),1)joinBy ":"
}
Спасибо .. Решает проблему :) Весь приведенный выше код работает потрясающе