Bagikan melalui


extract()

Mendapatkan kecocokan untuk regex dari string sumber.

Secara opsional, konversikan substring yang diekstrak ke jenis yang ditunjukkan.

Sintaks

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

Pelajari selengkapnya tentang konvensi sintaksis.

Parameter

Nama Tipe Wajib Deskripsi
regex string ✔️ Ekspresi reguler.
captureGroup int ✔️ Grup penangkapan untuk diekstrak. 0 adalah singkatan dari seluruh kecocokan, 1 untuk nilai yang cocok dengan '('tanda kurung')' pertama dalam ekspresi reguler, dan 2 atau lebih untuk tanda kurung berikutnya.
sumber string ✔️ String yang akan dicari.
typeLiteral string Jika disediakan, substring yang diekstraksi dikonversi ke jenis ini. Contohnya,typeof(long).

Mengembalikan

Jika regex menemukan kecocokan dalam sumber: substring yang cocok dengan grup pengambilan captureGroup yang ditunjukan, secara opsional dikonversi ke typeLiteral.

Jika tidak ada yang cocok, atau konversi jenis gagal: null.

Contoh

Contoh string Trace dicari untuk definisi Duration. Kecocokan dikonversi ke real, kemudian dikalikan dengan konstanta waktu (1s) sehingga Duration adalah jenis timespan. Dalam contoh ini, sama dengan 123,45 detik:

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

Contoh ini setara dengan substring(Text, 2, 4):

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