extract_all()
Pobierz wszystkie dopasowania dla wyrażenia regularnego z ciągu źródłowego. Opcjonalnie pobierz podzbiór pasujących grup.
print extract_all(@"(\d+)", "a set of numbers: 123, 567 and 789") // results with the dynamic array ["123", "567", "789"]
Przestarzałe aliasy: extractall()
Składnia
extract_all(
Regex,
[captureGroups,
] Źródła)
Dowiedz się więcej o konwencjach składniowych.
Parametry
Nazwa | Typ | Wymagane | Opis |
---|---|---|---|
Regex | string |
✔️ | Wyrażenie regularne zawierające od jednej do 16 grup przechwytywania. |
captureGroups | dynamic |
Tablica wskazująca grupy przechwytywania do wyodrębnienia. Prawidłowe wartości to od 1 do liczby przechwytujących grup w wyrażeniu regularnym. Nazwane grupy przechwytywania są również dozwolone. Zobacz przykłady. | |
Źródła | string |
✔️ | Ciąg do wyszukania. |
Zwraca
- Jeśli wyrażenie regularne znajdzie dopasowanie w źródle: zwraca tablicę dynamiczną, w tym wszystkie dopasowania względem wskazanych grup przechwytywania przechwytywaniaGroups lub wszystkie grupy przechwytywania w regex.
- Jeśli liczba grup przechwytywania wynosi 1: zwracana tablica ma jeden wymiar dopasowanych wartości.
- Jeśli liczba grup captureGroups jest większa niż 1: zwracana tablica jest dwuwymiarową kolekcją dopasowań wielowartościowych na wybór grup przechwytywania lub wszystkie grupy przechwytywania obecne w regex , jeśli element captureGroups zostanie pominięty .
- Jeśli nie ma dopasowania:
null
.
Przykłady
Wyodrębnianie pojedynczej grupy przechwytywania
Następujące zapytanie zwraca reprezentację szesnastkową (dwie cyfry szesnastkowej) identyfikatora GUID.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"([\da-f]{2})", Id)
Dane wyjściowe
ID (Identyfikator) | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | ["82","b8","be","2d","df","a7","4b","d1","8f","63","24","ad","26","d3","14","49"] |
Wyodrębnianie kilku grup przechwytywania
Poniższe zapytanie używa wyrażenia regularnego z trzema grupami przechwytywania, aby podzielić każdą część identyfikatora GUID na pierwszą literę, ostatnią literę i cokolwiek znajduje się w środku.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", Id)
Dane wyjściowe
ID (Identyfikator) | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |
Wyodrębnianie podzestawu grup przechwytywania
Poniższe zapytanie wybiera podzbiór przechwytywania grup.
Wyrażenie regularne jest zgodne z pierwszą literą, ostatnią literą i resztą.
Parametr captureGroups służy do wybierania tylko pierwszych i ostatnich części.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", dynamic([1,3]), Id)
Dane wyjściowe
ID (Identyfikator) | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","d"],["d","7"],["4","1"],["8","3"],["2","9"]] |
Używanie nazwanych grup przechwytywania
Grupy przechwytywania w poniższym zapytaniu używają zarówno indeksów grup przechwytywania, jak i odwołań do grup przechwytywania nazwanych w celu pobrania pasujących wartości.
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)
Dane wyjściowe
ID (Identyfikator) | guid_bytes |
---|---|
82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla