1

How do I convert below input string (which will be retrieved from config.yaml properties file) to required json object using Dataweave?

Input:

"ABC:123,DEF:456,GHI:789"

Required Output:

{
    "ABC":"123",
    "DEF":"456",
    "GHI":"789"
}

2 Answers2

2

splitBy and reduce can be used like below

("ABC:123,DEF:456,GHI:789" splitBy ",") reduce ((item, accumulator={}) -> 
    accumulator ++ 
    do
    {   
        var items = item splitBy  ":"
        ---
        (items[0]): items[1]
    })
sudhish_s
  • 573
  • 2
  • 5
1
%dw 2.0
output application/json
---

{(("ABC:123,DEF:456,GHI:789" splitBy ",")  map {
    ({ (($ splitBy ":")[0]): (($ splitBy ":")[1])})

})}
Salim Khan
  • 4,233
  • 11
  • 15