extract()

ソース文字列から正規表現との一致を取得します。

必要に応じて、抽出された部分文字列を、指定した型に変換できます。

構文

extract(regex, captureGroup, source [, typeLiteral])

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

パラメーター

件名 タイプ Required 説明
regex string ✔️ 正規表現
captureGroup int ✔️ 抽出するキャプチャ グループ。 0 は一致全体を表し、1 は正規表現の最初の '('かっこ')' で一致する値を表し、後続のかっこには 2 つ以上を表します。
ソース string ✔️ 検索する文字列。
typeLiteral string 指定した場合、抽出された部分文字列はこの型に変換されます。 たとえば、typeof(long) のようにします。

返品

regex によって source 内で一致が検出された場合: 指定されたキャプチャ グループ captureGroup に対して一致した substring。オプションで、typeLiteral に変換されます。

一致がないか、型変換が失敗した場合: null

サンプル文字列 TraceDuration の定義を検索します。 一致は real に変換された後、時間定数 (1s) で乗算されて、Durationtimespan 型になります。 この例では、123.45 秒です。

T
| extend Trace="A=1, B=2, Duration=123.45, ..."
| extend Duration = extract("Duration=([0-9.]+)", 1, Trace, typeof(real)) * time(1s) 

次の例は、 substring(Text, 2, 4)に相当します。

extract("^.{2,2}(.{4,4})", 1, Text)