如何从有效载荷中传入的字符串值中获取值,

问题描述

我得到了一个有效载荷,其中包含一些具有例如值的键

1. mulesoft[04444]
2. muleworld[88990]

现在我想在这里提取用方括号括起来的内容。

让我们来看一个实际的问题,这里是传入的有效载荷

{
    "message": "Hello world[009]","sender" : "myself[001]","to": "friend[0089]"
}

这里我想在数据编​​织代码中创建一个 Mulesoft 函数,我可以用它来提取方括号中括起来的值

请为此编写 DWL 代码。

解决方法

假设 [] 中的内容构成给定文本的最后一部分,您也可以试试这个:

((payload.message splitBy("["))[1]) replace ("]") with ""
,

我今天在其中一个 API 中遇到了这个问题,所以我想我也应该与其他人分享这个问题。 我已经为它编写了如下的 DWL 代码

%dw 2.0
import * from dw::core::Strings
output application/json
fun extract(key)= substringBefore((substringAfter(key,"[")),"]")
---
{
    value: extract(payload.message)
}

它给了我想要的 o/p

{
  "value": "009"
}

谢谢

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...