2016-04-06 22 views
0

DataWeave'de, bir giriş değerinin bir karakterin ortaya çıkmasına kadar herşeyi olduğu şekilde nasıl girdiğini nasıl altlarım? Giriş değerinim ABCD_123 gibi bir şeydir ve her şeyi alt çizgiye götürmem gerekiyor, bu yüzden çıkışım ABCD olur. Bunu gerçekleştiren normal ifade /[^_]*/'dur, ancak DataWeave kullanarak bunu gerçekleştirmenin bir yolunu bulamıyorum. Herhangi bir yardım takdir edilecektir!Data Altında Substring Bir karakterin ortaya çıkmasına kadar,

%function split(text) text splitBy "_"

Ve sonra benim DW eşlemlemesinde, ben değerini alır:

OUTPUT: split(payload.INPUT)[0]

@ WiktorStribiżew yorumuna dayanarak
+0

Sanırım '% function words (name) name splitBy" _ "' ve sonra 'kullanarak (parts = words ($ variable)) { myVar: parts [0], ...' (bkz. [Bu referans ] (https://docs.mulesoft.com/mule-user-guide/v/3.7/da taweave-referans belgeler)). –

+0

Yorumunuz için teşekkür ederiz @ WiktorStribiżew, şimdi bir cevap ekledim – danw

cevap

2

, ben bu çözülmesi yolu bir işlev bildirerek oldu