2017-09-20 5 views
0

문자열이 50 자이고 그 중 작은 부분을 3 개 추출하고 싶습니다. 시도 :문자열을 mulesoft의 여러 flowvars로 분할

%dw 1.0 %output application/json 
--- 
payload map ((payload01 , indexOfPayload01) -> {  
    id: payload01.substring(0,2), 
     name: payload01.substring(2,14), 
     age: payload01.substring(14,16) 
}) 

하지만 작동하지 않습니다. 어떤 제안?

답변

1

문자열의 "substring"연산은 대괄호를 사용하여 위치를 나타냅니다. 내가 두 번째 ooption을 시도 https://docs.mulesoft.com/mule-user-guide/v/3.8/dataweave-operators#substring

+0

id: payload01[0..2] 

방문 자세한 내용은 Dataweave 운영자의 문서를

, 그것은 작품을 나던. 점점 오류 : com.mulesoft.weave.mule.exception.WeaveExecutionException : 실행 중 예외 : 페이로드 맵 ((payload01, indexOfPayload01) -> 발견 '맵핑'연산자 용^{ 유형 불일치 : 문자열 : 함수 필수 : ​​배열, : 기능 입력 문자열은 으로 시작합니다. 01Ram Prakash23 – TastyCode

+0

전체 입력을 게시 할 수 있습니까? 되풀이 요소입니까? 그렇지 않다면 "map"지시문이 필요하지 않습니다. , {id : payload [0..2], \t 이름 : 페이로드 [2..14], 나이 : 페이로드 [14..16]} –

+0

이것은 샘플 입력이며, ID, 이름 및 나이에만 관심이 있습니다. 처음 15 자입니다. "03Sr i Prakash26 Arlington VA " – TastyCode