2016-04-06 3 views
0

В DataWeave, как бы подстроить входное значение таким образом, чтобы на выходе было все до появления символа? Мое значение ввода - это что-то вроде ABCD_123, и мне нужно взять все до подчеркивания, поэтому мой вывод будет ABCD. Регулярное выражение, которое достигает этого, равно /[^_]*/, но я не могу найти способ реализовать это с помощью DataWeave. Любая помощь будет оценена!Подстрока в DataWeave до появления символа

+0

Я думаю, вы можете использовать '% function words (name) name splitBy" _ "', а затем 'using (parts = words ($ variable)) { myVar: parts [0], ...' (см. [Эта ссылка ] (https://docs.mulesoft.com/mule-user-guide/v/3.7/da taweave-ссылки документация)). –

+0

Спасибо за ваш комментарий @ WiktorStribiżew, теперь я добавил ответ – danw

ответ

2

на основе @ WiktorStribiżew свой комментарий, как я решил это, объявив функцию:

%function split(text) text splitBy "_"

И тогда в моем отображении DW, я беру значение как:

OUTPUT: split(payload.INPUT)[0]

Смежные вопросы