次の方法で共有


extract_all()

適用対象: ✅Microsoft FabricAzure データ エクスプローラーAzure MonitorMicrosoft Sentinel

ソース文字列から正規表現と一致するすべてを取得します。 必要に応じて、一致するグループのサブセットを取得します。

print extract_all(@"(\d+)", "a set of numbers: 123, 567 and 789") // results with the dynamic array ["123", "567", "789"]

非推奨のエイリアス: extractall()

構文

extract_all( regex, [captureGroups,] )

構文規則について詳しく知る。

パラメーター

件名 タイプ 必須 説明
regex string ✔️ 1 から 16 のキャプチャ グループを含む正規表現
captureGroups dynamic 抽出するキャプチャ グループを示す配列。 有効な値は、1 から正規表現内のキャプチャ グループの数までです。 名前付きキャプチャ グループも許可されます。 を参照してください。
ソース string ✔️ 検索する文字列。

返品

  • regex によって source で一致が見つかった場合: 指定されたキャプチャ グループ captureGroups、または regex 内のすべてのキャプチャ グループに対するすべての一致を含む動的配列を返します。
  • captureGroups の数が 1 の場合: 返される配列には、一致する値の 1 つの次元があります。
  • captureGroups の数が 1 より大きい場合: 返される配列は、captureGroups の選択ごと、または regex に存在するすべてのキャプチャ グループ (captureGroups が省略された場合) における複数値一致の 2 次元コレクションです。
  • 一致がない場合: null

次の例では、1 つのグループ キャプチャを抽出し、GUID の 16 進バイト表現 (2 桁の 16 進数) を返します。

print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"([\da-f]{2})", Id) 

出力

身分証明書 guid_bytes
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 ["82","b8","be","2d","df","a7","4b","d1","8f","63","24","ad","26","d3","14","49"]

次の例では、3 つのキャプチャ グループを含む正規表現を使用して、各 GUID 部分を最初の文字、最後の文字、および中央にあるものに分割します。

print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", Id)

出力

身分証明書 guid_bytes
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]]

次の例では、キャプチャ グループのサブセットを選択します。

正規表現は、最初の文字、最後の文字、残りすべてと一致します。

captureGroups パラメーターは、最初の部分と最後の部分のみを選択するために使用されます。

print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", dynamic([1,3]), Id) 

出力

身分証明書 guid_bytes
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 [["8","d"],["d","7"],["4","1"],["8","3"],["2","9"]]

次の例は、 captureGroups がキャプチャ グループ インデックスと名前付きキャプチャ グループ参照の両方を使用して、一致する値をフェッチする方法を示しています。

print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(?P<first>\w)(?P<middle>\w+)(?P<last>\w)", dynamic(['first',2,'last']), Id) 

出力

身分証明書 guid_bytes
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]]