如何解决在Mulesoft或DataWeave中将大字符串拆分为n个大小的块
我必须将字符串大小为100的字符串拆分为固定长度的n个块(在我的情况下为10个字符)。最后一块可能包含发还骚扰者。
这是我在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 arbitrary length
也有类似的解决方案基本上您需要
payload.str scan /.{1,10}/ map {
msg: payload.msg,str: $[0]
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。