Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel-
Haal een overeenkomst op voor een reguliere expressie uit een brontekenreeks.
U kunt desgewenst de geëxtraheerde subtekenreeks converteren naar het aangegeven type.
Syntaxis
extract(
regex,captureGroup,bron [,typeLiteral])
Meer informatie over syntaxisconventies.
Parameterwaarden
| Naam | Typologie | Vereist | Beschrijving |
|---|---|---|---|
| regex- | string |
✔️ | Een reguliere expressie. |
| captureGroup | int |
✔️ | De opnamegroep die moet worden geëxtraheerd. 0 staat voor de hele overeenkomst, 1 voor de waarde die overeenkomt met de eerste '('haakje')' in de reguliere expressie en 2 of meer voor volgende haakjes. |
| bron | string |
✔️ | De tekenreeks die moet worden gezocht. |
| typeLiteral | string |
Indien opgegeven, wordt de geëxtraheerde subtekenreeks geconverteerd naar dit type. Bijvoorbeeld typeof(long). |
Retourneert
Als regex een overeenkomst vindt in bronbron: de subtekenreeks die overeenkomt met de aangegeven capturegroep captureGroup, eventueel geconverteerd naar typeLiteral.
Als er geen overeenkomst is of als de typeconversie mislukt: null.
Voorbeelden
In het volgende voorbeeld wordt de gebruikersnaam, e-mail, leeftijd uit de tekenreeks geëxtraheerd. De reguliere expressie wordt gebruikt om de informatie te extraheren.
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)
uitvoer
| Tekst | UserName |
EmailId |
Age |
|---|---|---|---|
| Gebruiker: James, E-mail: James@example.com, Leeftijd: 29 | James | James@example.com | 29 |
| Gebruiker: David, Leeftijd: 35 | David | 35 |
In het volgende voorbeeld wordt de maand uit de tekenreeks geëxtraheerd Dates en wordt een tabel geretourneerd met de datumtekenreeks en de maand als int-type.
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
uitvoer
| DateString | Month |
|---|---|
| 15-12-2024 | 12 |
| 21-07-2023 | 7 |
| 10-03-2022 | 3 |