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
Alle overeenkomsten voor een reguliere expressie ophalen uit een brontekenreeks. U kunt desgewenst een subset van overeenkomende groepen ophalen.
print extract_all(@"(\d+)", "a set of numbers: 123, 567 and 789") // results with the dynamic array ["123", "567", "789"]
Afgeschafte aliassen: extractall()
Syntaxis
extract_all(
regex, [captureGroups,] bron)
Meer informatie over syntaxisconventies.
Parameterwaarden
| Naam | Typologie | Verplicht | Beschrijving |
|---|---|---|---|
| regex- | string |
✔️ | Een reguliere expressie met tussen één en 16 capture-groepen. |
| captureGroups | dynamic |
Een matrix die de opnamegroepen aangeeft die moeten worden geëxtraheerd. Geldige waarden zijn van 1 tot het aantal vastleggen van groepen in de reguliere expressie. Benoemde opnamegroepen zijn ook toegestaan. Zie voorbeelden. | |
| bron | string |
✔️ | De tekenreeks die moet worden gezocht. |
Retouren
- Als regex een overeenkomst in de bron vindt: retourneert dynamische matrix, inclusief alle overeenkomsten met de aangegeven capture groups captureGroups of alle vastleggen van groepen in de regex.
- Als het aantal captureGroups 1 is: de geretourneerde matrix heeft één dimensie van overeenkomende waarden.
- Als het aantal captureGroups groter is dan 1: de geretourneerde matrix is een tweedimensionale verzameling overeenkomsten met meerdere waarden per captureGroups-selectie of alle capturegroepen die aanwezig zijn in de regex als captureGroups wordt weggelaten.
- Als er geen overeenkomst is:
null.
Voorbeelden
In het volgende voorbeeld wordt één groepsopname geëxtraheerd, waarmee een hex-byteweergave (twee hex-cijfers) van de GUID wordt geretourneerd.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"([\da-f]{2})", Id)
Uitvoer
| ID-kaart | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | ["82","b8","be","2d","df","a7","4b","d1","8f","63","24","ad","26","d3","14","49"] |
In het volgende voorbeeld wordt een reguliere expressie met drie vastleggende groepen gebruikt om elk GUID-deel te splitsen in de eerste letter, laatste letter en wat er in het midden staat.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", Id)
Uitvoer
| ID-kaart | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |
In het volgende voorbeeld wordt een subset van het vastleggen van groepen geselecteerd.
De reguliere expressie komt overeen met de eerste letter, laatste letter en alle rest.
De parameter captureGroups wordt gebruikt om alleen de eerste en de laatste onderdelen te selecteren.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", dynamic([1,3]), Id)
Uitvoer
| ID-kaart | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","d"],["d","7"],["4","1"],["8","3"],["2","9"]] |
In het volgende voorbeeld ziet u hoe captureGroups zowel groepsindexen vastleggen als benoemde capture-groepsverwijzingen gebruikt om overeenkomende waarden op te halen.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(?P<first>\w)(?P<middle>\w+)(?P<last>\w)", dynamic(['first',2,'last']), Id)
Uitvoer
| ID-kaart | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |