-1

我需要有关 Dataweave 2.0 代码的帮助,我收到的输入如下所示:

输入 - 0000000123456789

输出应该是 - 0123456789

我怎样才能解决这个问题?

4

3 回答 3

1

您可以尝试以下 DataWeave 表达式:

%dw 2.0
output application/json
var value = "0000000123456789"
fun getLastChars(str, len) = 
  if (str != null and sizeOf(str) >= len) 
    value[(sizeOf(str) - len) to (sizeOf(str)-1)] 
  else str
---
{
    val: getLastChars(value, 10)
}
于 2021-01-10T22:23:06.853 回答
0

就像另一种有趣的方式一样,虽然作为一个可重用的函数,olamiral 的答案可能是要走的路。

%dw 2.0
output application/json
import withMaxSize from dw::core::Strings
---
(payload[-1 to 1] withMaxSize 10)[-1 to 1]
于 2021-01-11T16:28:09.590 回答
0

如果您的字符串长度不会改变,请执行以下操作:

%dw 2.0
output application/json
var myString = "0000000123456789"
---
myString[6 to 15]
于 2021-01-11T12:00:28.547 回答