ExtractText 2025.5.31.15

バンドル

org.apache.nifi | nifi-standard-nar

説明

FlowFile の内容に対して、1つ以上の正規表現を評価します。正規表現の結果は、 FlowFile 属性に割り当てられます。正規表現は、ユーザー定義のプロパティを追加することによって入力されます。プロパティの名前は、結果が配置される属性名にマッピングされます。属性は、名前付きキャプチャグループを有効にすることに基づいて、異なる方法で生成されます。名前付きキャプチャグループが有効でない場合: 最初のキャプチャグループが見つかる場合、属性名に配置されます。しかし、一致する文字列そのものを含むすべてのキャプチャグループは、オプションで一致しないキャプチャグループを除いて、インデックス値が提供される属性名で提供されます。 - 例えば、与えられた属性名が "regex" で式が "abc(def)?(g)" だと、 "def" が一致する場合には "def" の値とともに "regel.1" を追加します。"def" がマッチしなかった場合、"regex.1 "という名前の属性は追加されませんが、 "g" という値の "regex.2" という名前の属性は関係なく追加されます。名前付きキャプチャグループが有効な場合:それぞれの名前付きキャプチャグループは、見つかった場合、提供された名前の属性名に配置されます。有効にすると、一致した文字列そのものが属性名に入ります。複数の一致が有効な場合、インデックスは最初の一致セットの後に適用されます。例外は任意で一致しないグループをキャプチャすることです。例えば、属性名 "regex" と式 "abc(?<NAMED>def)?(?<NAMED-TWO>g)" が与えられた場合、 "def" が一致すれば、 "def" の値を持つ属性 "regex.NAMED" を追加します。もし "g" が関係なく一致するのであれば、 "g" の値を持つ属性 "regex.NAMED-TWO" を追加します。プロパティの値は、1つ以上のキャプチャグループを持つ有効な正規表現でなければなりません。名前付きキャプチャグループが有効な場合、すべてのキャプチャグループに名前を付ける必要があります。そうでない場合、プロセッサー構成は検証に失敗します。正規表現が複数回一致した場合、キャプチャグループの繰り返しを有効にするプロパティがtrueにセットされていない限り、最初に一致したものだけが使用されます。指定された正規表現が一致した場合、 FlowFile(s) は 'matched' にルーティングされます。指定された正規表現が一致しない場合、 FlowFile は 'unmatched' にルーティングされ、 FlowFile に属性は適用されません。

タグ

正規表現, テキスト, 評価, 抽出, regex

入力要件

REQUIRED

機密動的プロパティをサポート

false

プロパティ

プロパティ

説明

文字セット

ファイルがエンコードされている文字セット

正準同値の有効化

2つの文字が一致するのは、その完全な正準分解が一致するときだけであることを示します。

大文字と小文字を区別しない一致を有効にします。

大文字と小文字が異なっていても、2つの文字が一致することを示します。埋め込みフラグ (?i) でも指定できます。

DOTALL モードの有効化

'.' 式は、行終端を含むすべての文字に一致することを示します。埋め込みフラグ (?s) で指定することもできます。

パターンのリテラル解析の有効化

メタ文字とエスケープ文字に特別な意味を与えないことを示します。

マルチラインモードの有効化

'^' と '$' が、入力全体の先頭や末尾だけでなく、行終端やシーケンスの末尾の直後や直前にも一致することを示します。埋め込みフラグ(?m)で指定することもできます。

Unicode 定義済み文字クラスの有効化

Unicode Technical Standard #18: Unicode Regular Expression Annex C: Compatibility Propertiesへの準拠を指定します。埋め込みフラグ(?U)で指定することもできます。

Unicodeを意識した大文字と小文字の折りたたみの有効化

「大文字と小文字を区別しないマッチングを有効にする」と併用すると、Unicode標準に準拠したマッチングを行います。埋め込みフラグ(?u)で指定することもできます。

Unixラインモードの有効化

'.'、'^'、'$' の動作において、''行終端のみが認識されることを示します。埋め込みフラグ (?d) で指定することもできます。

名前付きグループサポートの有効化

trueをセットすると、正規表現に名前付きグループが存在する場合、属性名にはグループインデックスではなくグループ名が使用されます。すべてのキャプチャグループには名前を付けなければなりません。グループ数(キャプチャグループ0を除く)が名前付きグループ数と等しくない場合、検証は失敗します。

繰り返しキャプチャグループの有効化

trueにセットすると、キャプチャグループにマッチする文字列がすべて抽出されます。そうでない場合、正規表現が複数回一致すると、最初に一致したものだけが抽出されます。

キャプチャグループ0を含む

キャプチャグループ0を属性として含めることを示します。キャプチャグループ0は正規表現一致の全体を表し、通常は使用されず、かなりの長さになる可能性があります。

最大バッファサイズ

正規表現を適用するためにバッファリングするデータの最大量 (FlowFile ごと) を指定します。FlowFiles が指定された最大値より大きい場合は、完全に評価されません。

最大キャプチャグループ長

キャプチャーグループの値の最大文字数を指定します。最大値を超える文字は切り捨てられます。

パターン内の空白とコメントの許可

このモードでは、空白は無視され、#で始まる埋め込みコメントは行末まで無視されます。埋め込みフラグ (?x) で指定することもできます。

リレーションシップ

名前

説明

matched

FlowFiles がこの関係にルーティングされるのは、正規表現が正常に評価され、その結果 FlowFile が変更されたときです。

unmatched

FlowFiles の内容に一致する正規表現がない場合は、このリレーションに FlowFile がルーティングされます。