如何从有效负载中的字符串值中获取值,

How to get a value from a string value that is coming in a payload,

我正在获取一个负载,其中包含一些具有值的键,例如

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

现在我想在这里提取方括号中的内容。

举个实际问题,这里传入payload

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

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

请为此编写 DWL 代码。

我今天在 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"
}

谢谢

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

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