ReplaceText

ReplaceText

FlowFile 내용에서 정규 표현식이나 리터럴 값을 검색해 일치하는 부분을 다른 값으로 바꾸는 프로세서예요. 텍스트를 앞뒤에 추가(append/prepend)하는 데도 쓸 수 있어요.

출처: Snowflake 문서

본문

번들 (Bundle)

org.apache.nifi | nifi-standard-nar

설명 (Description)

FlowFile 내용에서 일부 텍스트 값(정규 표현식/regex 또는 리터럴 값으로)을 검색하고, 그 값과 일치하는 내용 부분을 대체 값으로 바꿔 FlowFile의 내용을 갱신합니다. FlowFile 내용에 텍스트를 추가(append)하거나 앞에 붙이는(prepend) 데에도 사용할 수 있습니다.

태그 (Tags)

Change, Modify, Regex, Regular Expression, Replace, Text, Update

입력 요구사항 (Input Requirement)

REQUIRED

민감 동적 속성 지원 (Supports Sensitive Dynamic Properties)

false

속성 (Properties)

속성 (Property) 설명 (Description)
Character Set 파일이 인코딩된 Character Set입니다.
Evaluation Mode 'Replacement Strategy'를 각 줄에 대해 별도로 실행할지(Line-by-Line) 전체 파일을 메모리에 버퍼링하고(Entire Text) 실행할지 결정합니다.
Line-by-Line Evaluation Mode FlowFile의 모든 줄(Line-by-Line), 첫 줄(Header)만, 마지막 줄(Footer)만, 첫 줄(Header)을 제외하고, 또는 마지막 줄(Footer)을 제외하고 'Replacement Strategy'를 각 줄에 대해 별도로 실행합니다.
Maximum Buffer Size 교체를 적용하기 위해 버퍼링할 최대 데이터 양(파일별 또는 줄별, Evaluation Mode에 따라 다름)을 지정합니다. 'Evaluation Mode'에서 'Entire Text'가 선택되고 FlowFile이 이 값보다 크면 FlowFile은 'failure'로 라우팅됩니다. 'Line-by-Line' 모드에서는 단일 줄이 이 값보다 크면 FlowFile이 'failure'로 라우팅됩니다. 기본값 1 MB가 제공되며 주로 'Entire Text' 모드용입니다. 'Line-by-Line' 모드에서는 8 KB 또는 16 KB 같은 값을 권장합니다. 'Replacement Strategy' 속성이 Append, Prepend, Always Replace 중 하나로 설정되면 이 값은 무시됩니다.
Regular Expression FlowFile 내용에서 검색할 Search Value입니다. 'Literal Replace' 및 'Regex Replace' 매칭 전략에서만 사용됩니다.
Replacement Strategy FlowFile의 텍스트 내용에서 무엇을 어떻게 바꿀지에 대한 전략입니다.
Replacement Value 'Replacement Strategy'를 사용해 삽입할 값입니다. "Regex Replace"를 사용하면 정규 표현식 캡처 그룹에 대한 역참조가 지원되지만, 정규 표현식에 존재하지 않는 캡처 그룹을 참조하는 역참조는 리터럴 값으로 처리됩니다. 역참조는 Expression Language 를 사용해 '$1', '$2' 등으로 참조할 수도 있습니다. 이러한 변수는 "Standard" 속성 이름이 아니므로 단일 따옴표를 반드시 포함해야 합니다(속성 이름은 숫자·문자·밑줄만 포함하지 않는 한 따옴표로 묶어야 합니다).
Text to Append Evaluation Mode 속성의 구성된 값에 따라 FlowFile 끝 또는 각 줄 끝에 추가할 텍스트입니다.
Text to Prepend Evaluation Mode 속성의 구성된 값에 따라 FlowFile 시작 또는 각 줄 시작에 앞에 붙일 텍스트입니다.

관계 (Relationships)

이름 (Name) 설명 (Description)
failure 갱신할 수 없었던 FlowFile이 이 관계로 라우팅됩니다.
success 성공적으로 처리된 FlowFile이 이 관계로 라우팅됩니다. 여기에는 텍스트가 교체된 FlowFile과 그렇지 않은 FlowFile이 모두 포함됩니다.

사용 사례 (Use cases)

  • FlowFile의 모든 줄 끝에 텍스트를 추가합니다.
  • FlowFile의 모든 줄 시작에 텍스트를 앞에 붙입니다.
  • FlowFile에서 리터럴 문자열의 모든 항목을 다른 값으로 교체합니다.
  • FlowFile에서 리터럴 문자열의 모든 항목을 변환합니다.
  • FlowFile의 내용을 특정 텍스트로 완전히 교체합니다.

더 알아보기 (Learn more)