[英]Split large string in n-size chunks in Mulesoft or DataWeave
我必須拆分一個字符串,假設字符大小為 100 到固定長度的 n 塊(在我的情況下是 10 個字符)。 最后一塊可能包含剩余的 harachters。
這我必須在 DataWeave 映射中完成。
輸入:
{
"msg": "Hello world!",
"str" : "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyIGFkaXBpc2NpbmcgZWxpdC4gU2VkIG5vbiBvcmNpIHNlZCBsb3JlbSBjb25ndWUgbWF0dGlzIHNpdCBhbWV0IHV0IG51bGxhLiBTZWQgYWxpcXVhbSBjb25zZXF1YXQgbWFsZXN1YWRhLiBQZWxsZW50ZXNxdWUgdWx0cmljaWVzIG9kaW8gc2VtLCBhdCBjb25ndWUgZHVpIHBoYXJldHJhIHVsdHJpY2llcy4gTW9yYmkgc2l0IGFtZXQgc2VtIHZvbHV0cGF0LCB2b2x1dHBhdCBsYWN1cyB2ZWwsIGRhcGlidXMgbGFjdXMuIEludGVyZHVtIGV0IG1hbGVzdWFkYSBmYW1lcyBhYyBhbnRlIGlwc3VtIHByaW1pcyBpbiBmYXVjaWJ1cy4gTWF1cmlzIGltcGVyZGlldCBlc3QgYXQgbnVsbGEgcGVsbGVudGVzcXVlLCBxdWlzIG1vbGVzdGllIGxhY3VzIHRlbXBvci4gU2VkIGV1aXNtb2QgZGFwaWJ1cyBudW5jIGV1IHBvc3VlcmUuIFNlZCBzZWQgcHVydXMgYXVjdG9yLCBwZWxsZW50ZXNxdWUgc2FwaWVuIHF1aXMsIGltcGVyZGlldCB1cm5hLg0KDQpDdXJhYml0dXIgYXVndWUgZG9sb3IsIHZvbHV0cGF0IHZpdGFlIHB1cnVzIGV0LCBpYWN1bGlzIGFjY3Vtc2FuIG1hZ25hLiBWZXN0aWJ1bHVtIGFudGUgaXBzdW0gcHJpbWlzIGluIGZhdWNpYnVzIG9yY2kgbHVjdHVzIGV0IHVsdHJpY2VzIHBvc3"
}
輸出應如下所示:
[{
"msg": "Hello world!",
"line": "<first 10 charachters>"
},
{
"msg": "Hello world!",
"line": "<2nd 10 charachters>"
},
...
{
"msg": "Hello world!",
"line": "<remaining charachters>"
}]
這里有一個類似的解決方案Mulesoft 3 DataWeave - split a string by an任意長度
基本上你需要
payload.str scan /.{1,10}/ map {
msg: payload.msg,
str: $[0]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.