kivonat()

Szolgáltatások váltása a Verzió legördülő listával. További információ a navigációról.
A következőkre vonatkozik: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel

A forrássztringből reguláris kifejezés egyezésének lekérése.

Igény szerint konvertálja a kinyert részszúrást a megadott típusra.

Szintaxis

extract( regex,captureGroup,forrás [,typeLiteral])

További információ szintaxiskonvenciákról.

Paraméterek

Név Típus Szükséges Leírás
regex string ✔️ Egy reguláris kifejezés.
captureGroup int ✔️ A kinyerni kívánt rögzítési csoport. A 0 a teljes egyezést jelenti, 1 a reguláris kifejezésben az első "('zárójel')' által egyeztetett értéket, a további zárójelek esetében pedig 2 vagy több.
forrás string ✔️ A keresendő sztring.
typeLiteral string Ha meg van adva, a kinyert részszúrás ilyen típusúvá lesz konvertálva. Például typeof(long).

Visszatér

Ha regex talál egyezést forrás: a megadott rögzítési csoporttal captureGroup, opcionálisan typeLiteral.

Ha nincs egyezés, vagy a típusátalakítás meghiúsul: null.

Példák

Az alábbi példa kinyeri a felhasználónevet, az e-mailt és az életkort a sztringből. A reguláris kifejezéssel kinyerhető az információ.

let _data = datatable(Text: string)
[
"User: James, Email: James@example.com, Age: 29",
"User: David, Age: 35"
];
_data |
extend UserName = extract("User: ([^,]+)", 1, Text),
       EmailId = extract(@"Email: (\S+),", 1, Text),
       Age = extract(@"\d+", 0, Text)

kimeneti

Szöveg UserName EmailId Age
Felhasználó: James, E-mail: James@example.com, Életkor: 29 James James@example.com 29
Felhasználó: David, Életkor: 35 Dávid 35

Az alábbi példa kinyeri a hónapot a sztringből Dates , és egy dátumsztringet és egy hónapot tartalmazó táblát ad vissza int típusként.

let Dates = datatable(DateString: string)
[
    "15-12-2024",
    "21-07-2023",
    "10-03-2022"
];
Dates
| extend Month = extract(@"-(\d{2})-", 1, DateString, typeof(int))
| project DateString, Month

kimeneti

Dátum karakterlánc Month
15-12-2024 12
21-07-2023 7
10-03-2022 3