2016-04-06 13 views
0

In DataWeave, wie würde ich einen Eingabewert so unterteilen, dass die Ausgabe bis zum Auftreten eines Zeichens alles ist? Mein Eingabewert ist etwas wie ABCD_123 und ich muss alles bis zum Unterstrich übernehmen, so dass meine Ausgabe ABCD wäre. Die Regex, die dies erreicht, ist /[^_]*/, aber ich kann keinen Weg finden, dies mit DataWeave zu implementieren. Jede Hilfe wäre willkommen!Teilstring in DataWeave bis zum Auftreten eines Zeichens

+0

Ich denke, Sie können '% Funktion Wörter (Name) Name splitBy" _ "' und dann 'using (Teile = Wörter ($ Variable)) { myVar: Teile [0], ...' (siehe [diese Referenz ] (https://docs.mulesoft.com/mule-user-guide/v/3.7/da taweave-Referenz-Dokumentation)). –

+0

Vielen Dank für Ihren Kommentar @ WiktorStribiżew, ich habe jetzt eine Antwort hinzugefügt – danw

Antwort

2

Basierend auf @ WiktorStribiżew Kommentar, wie ich dieses Problem gelöst war durch eine Funktion erklärt:

%function split(text) text splitBy "_"

Und dann in meinem DW-Mapping, nehme ich den Wert, wie:

OUTPUT: split(payload.INPUT)[0]

Verwandte Themen