scan

DataWeave 2.2 は Mule 4.2 と互換性があり、Mule 4.2 にバンドルされています。 このバージョンの Mule は、拡張サポートが終了する 2023 年 5 月 2 日にその すべてのサポート​が終了しました。

このバージョンの Mule を使用する CloudHub には新しいアプリケーションをデプロイできなくなります。許可されるのはアプリケーションへのインプレース更新のみになります。

標準サポートが適用されている最新バージョンの Mule 4 にアップグレード​することをお勧めします。これにより、最新の修正とセキュリティ機能強化を備えたアプリケーションが実行されます。

scan(String, Regex): Array<Array<String>>

入力文字列内で検出されたすべての一致を含む配列を返します。

各一致は、完全一致の後に正規表現のキャプチャグループ (存在する場合) が 含まれる配列として返されます。

パラメーター

名前 説明

text

スキャンする入力文字列。

regex

text​ (テキスト) 内でパターン一致を記述する Java 正規表現。

次の例では、​regex​ (正規表現) で URL が記述されます。括弧内に 3 つのキャプチャグループ (ピリオド ​.​ より前の文字と後の文字) が含まれます。入力 URL への一致とキャプチャグループの配列が作成されます。​flatten​ を使用して、出力を配列の配列から単純な配列にフラット化しています。​regex​ (正規表現) はスラッシュ (​//​) 内で指定されています。

ソース

%dw 2.0
output application/json
---
flatten("www.mulesoft.com" scan(/([w]*).([a-z]*).([a-z]*)/))

出力

[ "www.mulesoft.com", "www", "mulesoft", "com" ]

次の例では、​regex​ (正規表現) でメールアドレスが記述されます。2 つの キャプチャグループ (​@​ より前の文字と後の文字) が含まれます。入力文字内のメールアドレスへの一致とキャプチャグループの配列が作成されます。

ソース

%dw 2.0
output application/json
---
"anypt@mulesoft.com,max@mulesoft.com" scan(/([a-z]*)@([a-z]*).com/)

出力

[
  [ "anypt@mulesoft.com", "anypt", "mulesoft" ],
  [ "max@mulesoft.com", "max", "mulesoft" ]
]