빅데이터/Apache Nifi / / 2023. 12. 14. 15:37

Apache NiFi 표현 언어 가이드(3)

이번 장부터는 Apache nifi 표현 언어 가이드 2장에 이어 docs 내용의 함수부터 번역하여 기술하겠습니다.

문자열 조작

  입력 유형 반환 유형 설명
toUpper

String String 문자열을 모두 대문자로 변환합니다 "abc" => "ABC"
toLower

String String 문자열을 모두 소문자로 변환합니다 "ABC" => "abc"
trim

String String 문자열 앞뒤의 공백을 제거합니다 " 1 2 3 " => "123"
substring

String String 문자열의 일부를 가져옵니다 별도 작성
substringBefore

String String 특정 문자열이 등장하기 전까지 가져옵니다 별도 작성
substringBeforeLast

String String 특정 문자열이 마지막으로 등장하기 전까지 가져옵니다 별도 작성
substringAfter

String String   별도 작성
substringAfterLast

String String   별도 작성
getDelimitedField

String String 구분된 텍스트 라인에서 특정 필드를 반환합니다 별도 작성
append

String String 인수를 값에 추가한 결과를 반환합니다  
prepend String String 인수를 앞에 추가한 결과를 반환합니다  
replace String String 리터럴 문자열의 동일 문자열을 바꿉니다  
replaceFirst String String 리터럴 문자열의 첫번째 문자열을 바꿉니다  
replaceAll String String 리터럴 문자열의 모든 동일 문자열을 바꿉니다.  
padLeft String String 전달된 길이에 도달할 때까지 지정된 문자열을 앞에 추가합니다  
padRight String String 전달된 길이에 도달할 때까지 지정된 문자열을 추가합니다  
replaceNull Any not null else,
type of Argument
전달 문자열이 null인 경우 인수를 반환합니다  
replaceEmpty String String 전달 문자열이 null이거나 공백으로 구성된 경우 true 아닌경우 문자열이 반환됩니다  
length String Number 제목의 길이를 반환합니다  
evaluateELString String String 변수 값 내에서 표현식 언어를 평가합니다  
repeat String String 최소 반복과 최대 반복 사이에 임의 횟수만큼 반복되는 제목 문자열을 반환합니다  

 

다음 장에서는 수학연산 및 날짜 다루는 방법을 살펴보겠습니다.

아래에는 주로 표현식과 값에 대한 예제코드 작성방법입니다. 


Substring Examples

"filename" value "a brand new filename.txt"

 

표현식
${filename:substring(0,1)} a
${filename:substring(2)} brand new filename.txt
${filename:substring(12)} filename.txt
${filename:substring( ${filename:length():minus(2)} )} xt

 


SubstringBefore Examples

 

표현식
${filename:substringBefore('.')} a brand new filename
${filename:substringBefore(' ')} a
${filename:substringBefore(' n')} a brand
${filename:substringBefore('missing')} a brand new filename.txt

 


SubstringBeforeLast Examples

 

표현식
${filename:substringBeforeLast('.')} a brand new filename
${filename:substringBeforeLast(' ')} a brand new
${filename:substringBeforeLast(' n')} a brand
${filename:substringBeforeLast('missing')} a brand new filename.txt

 


SubstringAfter Examples

 

표현식
${filename:substringAfter('.')} txt
${filename:substringAfter(' ')} brand new filename.txt
${filename:substringAfter(' n')} ew filename.txt
${filename:substringAfter('missing')} a brand new filename.txt

 


substringAfterLast Examples

 

표현식
${filename:substringAfterLast('.')} txt
${filename:substringAfterLast(' ')} filename.txt
${filename:substringAfterLast(' n')} ew filename.txt
${filename:substringAfterLast('missing')} a brand new filename.txt

 


GetDelimitednField Examples

 

표현식
${line:getDelimitedField(2)} _(space)_32
${line:getDelimitedField(2):trim()} 32
${line:getDelimitedField(1)} "Jacobson.John"
${line:getDelimitedField(1, ',', '"', '\\', true)} Jacobson.John
${altLine:getDelimitedField(1, '|')} Jacobson.John

 


Replace Examples

 

표현식
${filename:replace('.', '_')} a brand new filename_txt
${filename:replace(' ', '.')} a.brand.new.filename.txt
${filename:replace('XYZ', 'ZZZ')} a brand new filename.txt
${filename:replace('filename', 'book')} a brand new book.txt

 


ReplaceFirst Examples

 

표현식
${filename:replaceFirst('a', 'the')} the brand new filename.txt
${filename:replaceFirst('[br]', 'g')} a grand new filename.txt
${filename:replaceFirst('XYZ', 'ZZZ')} a brand new filename.txt
${filename:replaceFirst('\w{8}', 'book')} a brand new book.txt

 


ReplaceAll Examples

 

표현식
${filename:replaceAll('\..*', '')} a brand new filename
${filename:replaceAll('a brand (new)', '$1')} new filename.txt
${filename:replaceAll('XYZ', 'ZZZ')} a brand new filename.txt
${filename:replaceAll('brand (new)', 'somewhat $1')} a somewhat new filename.txt

 


PadLeft Examples

 

표현식
${greetings:padLeft(10)} _____hello
${greetings:padLeft(10, '@')} @@@@@hello
${greetings:padLeft(10, 'xy')} xyxyxhello
${greetings:padLeft(10, 'aVeryLongPaddingString')} aVeryhello

 


PadRight Examples

 

표현식
${greetings:padRight(10)} hello_____
${greetings:padRight(10, '@')} hello@@@@@
${greetings:padRight(10, 'xy')} helloxyxyx
${greetings:padLeft(10, 'aVeryLongPaddingString')} helloaVery

 


Repeat Examples

 

표현식
${str:repeat(1)} abc
${str:repeat(2)} abcabc
${str:repeat(1,2)} abc or abcabc (at random)
${str:repeat( ${str:length()} )} abc or abcabc or abcabcabc (at random)

 

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유