Updates the content of a FlowFile by searching for some textual value in the FlowFile content (via Regular Expression/regex, or literal value) and replacing the section of the content that matches with some alternate value. It can also be used to append or prepend text to the contents of a FlowFile.
Text, Regular Expression, Update, Change, Replace, Modify, Regex
In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.
Display Name | API Name | Default Value | Allowable Values | Description |
---|---|---|---|---|
Replacement Strategy | Replacement Strategy | Regex Replace |
| The strategy for how and what to replace within the FlowFile's text content. |
Search Value | Regular Expression | (?s)(^.*$) | The Search Value to search for in the FlowFile content. Only used for 'Literal Replace' and 'Regex Replace' matching strategies Supports Expression Language: true (will be evaluated using flow file attributes and variable registry) This Property is only considered if the [Replacement Strategy] Property is set to one of the following values: [Regex Replace], [Literal Replace] | |
Replacement Value | Replacement Value | $1 | The value to insert using the 'Replacement Strategy'. Using "Regex Replace" back-references to Regular Expression capturing groups are supported, but back-references that reference capturing groups that do not exist in the regular expression will be treated as literal value. Back References may also be referenced using the Expression Language, as '$1', '$2', etc. The single-tick marks MUST be included, as these variables are not "Standard" attribute names (attribute names must be quoted unless they contain only numbers, letters, and _). Supports Expression Language: true (will be evaluated using flow file attributes and variable registry) This Property is only considered if the [Replacement Strategy] Property is set to one of the following values: [Prepend], [Regex Replace], [Always Replace], [Append], [Literal Replace] | |
Text to Prepend | Text to Prepend | The text to prepend to the start of the FlowFile, or each line, depending on teh configured value of the Evaluation Mode property Supports Expression Language: true (will be evaluated using flow file attributes and variable registry) This Property is only considered if the [Replacement Strategy] Property has a value of "Surround". | ||
Text to Append | Text to Append | The text to append to the end of the FlowFile, or each line, depending on teh configured value of the Evaluation Mode property Supports Expression Language: true (will be evaluated using flow file attributes and variable registry) This Property is only considered if the [Replacement Strategy] Property has a value of "Surround". | ||
Character Set | Character Set | UTF-8 | The Character Set in which the file is encoded | |
Maximum Buffer Size | Maximum Buffer Size | 1 MB | Specifies the maximum amount of data to buffer (per file or per line, depending on the Evaluation Mode) in order to apply the replacement. If 'Entire Text' (in Evaluation Mode) is selected and the FlowFile is larger than this value, the FlowFile will be routed to 'failure'. In 'Line-by-Line' Mode, if a single line is larger than this value, the FlowFile will be routed to 'failure'. A default value of 1 MB is provided, primarily for 'Entire Text' mode. In 'Line-by-Line' Mode, a value such as 8 KB or 16 KB is suggested. This value is ignored if the <Replacement Strategy> property is set to one of: Append, Prepend, Always Replace | |
Evaluation Mode | Evaluation Mode | Line-by-Line |
| Run the 'Replacement Strategy' against each line separately (Line-by-Line) or buffer the entire file into memory (Entire Text) and run against that. |
Line-by-Line Evaluation Mode | Line-by-Line Evaluation Mode | All |
| Run the 'Replacement Strategy' against each line separately (Line-by-Line) for all lines in the FlowFile, First Line (Header) alone, Last Line (Footer) alone, Except the First Line (Header) or Except the Last Line (Footer). |
Name | Description |
---|---|
success | FlowFiles that have been successfully processed are routed to this relationship. This includes both FlowFiles that had text replaced and those that did not. |
failure | FlowFiles that could not be updated are routed to this relationship |
Resource | Description |
---|---|
MEMORY | An instance of this component can cause high usage of this system resource. Multiple instances or high concurrency settings may result a degradation of performance. |