extract_all()
Hämta alla matchningar för ett reguljärt uttryck från en källsträng. Du kan också hämta en delmängd av matchande grupper.
print extract_all(@"(\d+)", "a set of numbers: 123, 567 and 789") // results with the dynamic array ["123", "567", "789"]
Inaktuella alias: extractall()
Syntax
extract_all(
Regex,
[captureGroups,
] Källkod)
Läs mer om syntaxkonventioner.
Parametrar
Namn | Typ | Obligatorisk | Beskrivning |
---|---|---|---|
Regex | string |
✔️ | Ett reguljärt uttryck som innehåller mellan en och 16 avbildningsgrupper. |
captureGroups | dynamic |
En matris som anger vilka avbildningsgrupper som ska extraheras. Giltiga värden är från 1 till antalet avbildningsgrupper i det reguljära uttrycket. Namngivna avbildningsgrupper tillåts också. Se exempel. | |
Källkod | string |
✔️ | Strängen som ska sökas. |
Returer
- Om regex hittar en matchning i källan: Returnerar dynamisk matris inklusive alla matchningar mot angivna avbildningsgrupper captureGroups eller alla avbildningsgrupper i regex.
- Om antalet captureGroups är 1: Den returnerade matrisen har en enda dimension med matchade värden.
- Om antalet captureGroups är mer än 1: Den returnerade matrisen är en tvådimensionell samling med flervärdesmatchningar per captureGroups-val , eller alla avbildningsgrupper som finns i regex om captureGroups utelämnas .
- Om det inte finns någon matchning:
null
.
Exempel
Extrahera en enda avbildningsgrupp
Följande fråga returnerar hex-byte-representation (två hex-siffror) för GUID.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"([\da-f]{2})", Id)
Resultat
ID | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | ["82","b8","be","2d","df","a7","4b","d1","8f","63","24","ad","26","d3","14","49"] |
Extrahera flera avbildningsgrupper
Följande fråga använder ett reguljärt uttryck med tre grupper som samlar in för att dela upp varje GUID-del i första bokstaven, sista bokstaven och vad som än finns i mitten.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", Id)
Resultat
ID | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |
Extrahera en delmängd av insamlingsgrupper
Följande fråga väljer en delmängd av grupper.
Det reguljära uttrycket matchar den första bokstaven, sista bokstaven och resten.
Parametern captureGroups används för att endast välja de första och sista delarna.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", dynamic([1,3]), Id)
Resultat
ID | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","d"],["d","7"],["4","1"],["8","3"],["2","9"]] |
Använda namngivna avbildningsgrupper
CaptureGroups i följande fråga använder både avbilda gruppindex och namngivna avbildningsgruppsreferenser för att hämta matchande värden.
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)
Resultat
ID | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för