Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Переключайте службы с помощью раскрывающегося списка Версия. Дополнительные сведения о навигации.
Область применения: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Получение всех совпадений для регулярного выражения из исходной строки. При необходимости извлеките подмножество соответствующих групп.
print extract_all(@"(\d+)", "a set of numbers: 123, 567 and 789") // results with the dynamic array ["123", "567", "789"]
Устаревшие псевдонимы: extractall()
Синтаксис
extract_all(
источник regex [captureGroups] ,,)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
| Имя (название) | Тип | Обязательно | Описание |
|---|---|---|---|
| regex | string |
✔️ | Регулярное выражение , содержащее между одной и 16 группами записи. |
| captureGroups | dynamic |
Массив, указывающий группы захвата для извлечения. Допустимые значения — от 1 до количества записей групп в регулярном выражении. Кроме того, разрешены именованные группы захвата. См. примеры: | |
| источник | string |
✔️ | Строка для поиска. |
Возвраты
- Если regex находит совпадение в источнике: возвращает динамический массив, включая все совпадения с указанными группами отслеживания групп отслеживания, или все группы записи в регулярной строке.
- Если число групп записи равно 1: возвращаемый массив имеет одно измерение сопоставленных значений.
- Если число групп записи превышает 1: возвращаемый массив представляет собой двухмерную коллекцию многозначных совпадений для каждого выбора captureGroups или все группы захвата, присутствующих в регулярном коде, если сборные группы не отображаются.
- Если совпадения нет:
null
Примеры
В следующем примере извлекается запись одной группы, возвращающая шестнадцатеричное представление (две шестнадцатеричные цифры) GUID.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"([\da-f]{2})", Id)
Выходные данные
| Идентификатор | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | ["82","b8","be","2d","df","a7","4b","d1","8f","63","24","ad","26","d3","14","49"] |
В следующем примере используется регулярное выражение с тремя группами записи для разделения каждой части GUID на первую букву, последнюю букву и все, что находится в середине.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", Id)
Выходные данные
| Идентификатор | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |
В следующем примере выбирается подмножество записей групп.
Регулярное выражение соответствует первой букве, последней букве и всем остальным.
Параметр captureGroups используется для выбора только первых и последних частей.
print Id="82b8be2d-dfa7-4bd1-8f63-24ad26d31449"
| extend guid_bytes = extract_all(@"(\w)(\w+)(\w)", dynamic([1,3]), Id)
Выходные данные
| Идентификатор | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","d"],["d","7"],["4","1"],["8","3"],["2","9"]] |
В следующем примере показано, как captureGroups использует индексы групп отслеживания и именованные ссылки на группы захвата для получения совпадающих значений.
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)
Выходные данные
| Идентификатор | guid_bytes |
|---|---|
| 82b8be2d-dfa7-4bd1-8f63-24ad26d31449 | [["8","2b8be2","d"],["d","fa","7"],["4","bd","1"],["8","f6","3"],["2","4ad26d3144","9"]] |