extract()
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,
source [,
typeLiteral])
Meer informatie over syntaxisconventies.
Parameters
Naam | Type | 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
Maand extraheren uit datum/tijd-tekenreeks
De volgende query extraheert de maand uit de tekenreeks Dates
en retourneert een tabel met de datumtekenreeks en de maand.
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 | Maand |
---|---|
15-12-2024 | 12 |
21-07-2023 | 7 |
10-03-2022 | 3 |
Gebruikersnaam extraheren uit een tekenreeks
In het volgende voorbeeld wordt de gebruikersnaam uit de tekenreeks geretourneerd. De reguliere expressie ([^,]+)
komt overeen met de tekst 'Gebruiker: ' tot aan de volgende komma, waardoor de gebruikersnaam effectief wordt geëxtraheerd.
let Text = "User: JohnDoe, Email: johndoe@example.com, Age: 29";
print UserName = extract("User: ([^,]+)", 1, Text)
uitvoer
Gebruikersnaam |
---|
JohnDoe |