Mule4 DataWeave中如何截取字符串空格前的内容?
解决DataWeave中截取空格前字符串的问题
嘿,我来帮你搞定这个问题!你现在用的trim()函数其实只是用来去除字符串首尾的空白字符,所以没法达到你想要的截取效果。不过有两个简单的方法可以实现你的需求:
方法一:使用splitBy()分割后取第一个元素
这个方法是把字符串按空格分割成数组,然后取数组的第一个元素:
%dw 2.0 output application/json var ab = "C##-01-20875 DB_GDTest" as String --- ab splitBy " " [0]
splitBy(" ")会把原字符串按空格拆分成一个包含两个元素的数组:["C##-01-20875", "DB_GDTest"],通过索引[0]就能拿到你需要的前半部分内容。
方法二:使用substringBefore()直接截取
DataWeave提供了更贴合这个场景的函数substringBefore(),它会返回指定分隔符第一次出现之前的子字符串:
%dw 2.0 output application/json var ab = "C##-01-20875 DB_GDTest" as String --- ab substringBefore " "
这个方法更直观,直接告诉函数“取空格之前的内容”,结果就是你期望的"C##-01-20875"。如果原字符串里有多个空格,它也只会截取第一个空格之前的部分,完全符合你的需求。
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

