У меня есть строка, как «Привет Я из„Казань, Россия“. Вывод должен бытьРазбивает строку в dataweave
Hi
I
am
from
Kazan, Russia
Я попробовал регулярное выражение [^\s\"']+|\"([^\"]*)\"|'([^']*)'
, который прекрасно работает на regexp.com. Но в dataweave это ничего не делает. Это то, что я пытался
%dw 1.0
%output application/json
%function split(data) {returnData: data splitBy "[^\s\"']+|\"([^\"]*)\"|'([^']*)'"}
---
split(payload)[0]
Edit 1
I пытался сканирование оператора
Это то, что я сделал
%dw 1.0
%output application/json
---
{
payload: payload scan /[^\s\"']+|\"([^\"]*)\"|'([^']*)'/
}
Но я получаю NullPointerException
Стек трассировки
Message : null (java.lang.NullPointerException).
Payload : [email protected]
Element : /logFlow/processors/0 @ log:log.xml:14 (Transform Message)
Element XML : <dw:transform-message doc:name="Transform Message" metadata:id="87d4353c-240d-4b1c-84b4-171f6c11045b">
<dw:input-payload mimeType="plain/text"></dw:input-payload>
<dw:set-payload>%dw 1.0%output application/json---{payload: payload scan /[^\s\"']+|\"([^\"]*)\"|'([^']*)'/}</dw:set-payload>
</dw:transform-message>
Можете ли вы объяснить регулярок часть, что такое '\ W ++ \ ш ++ | ж ++' делает? Я знаю, что '\ w' будет соответствовать символу, отличному от слова, но не получить остальных. – Abhay