extract()
ソース文字列から正規表現との一致を取得します。
必要に応じて、抽出された部分文字列を、指定した型に変換できます。
構文
extract(
regex,
captureGroup,
source [,
typeLiteral])
構文規則について詳しく知る。
パラメーター
名前 | 型 | 必須 | 説明 |
---|---|---|---|
regex | string |
✔️ | 正規表現。 |
captureGroup | int |
✔️ | 抽出するキャプチャ グループ。 0 は一致全体を表し、正規表現の最初の '('かっこ')' と一致する値の場合は 1、後続のかっこの場合は 2 以上を表します。 |
source | string |
✔️ | 検索対象の文字列。 |
typeLiteral | string |
指定した場合、抽出された部分文字列はこの型に変換されます。 たとえば、「 typeof(long) 」のように入力します。 |
戻り値
regex によって source 内で一致が検出された場合: 指定されたキャプチャ グループ captureGroup に対して一致した substring。オプションで、typeLiteral に変換されます。
一致がないか、型変換が失敗した場合: null
。
例
サンプル文字列 Trace
で Duration
の定義を検索します。
一致は real
に変換された後、時間定数 (1s
) で乗算されて、Duration
は timespan
型になります。 この例では、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)
フィードバック
https://aka.ms/ContentUserFeedback。
近日公開予定: 2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub イシューを段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、以下を参照してください:フィードバックの送信と表示