Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Переключайте службы с помощью раскрывающегося списка Версия. Дополнительные сведения о навигации.
Область применения: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Определяет соответствие для регулярного выражения из исходной строки.
При необходимости преобразуйте извлеченную подстроку в указанный тип.
Синтаксис
extract(
Regex,captureGroup,source [,typeLiteral])
Дополнительные сведения о соглашениях синтаксиса.
Параметры
| Имя (название) | Тип | Обязательно | Описание |
|---|---|---|---|
| regex | string |
✔️ | регулярное выражение. |
| captureGroup | int |
✔️ | Извлекаемая группа захвата. 0 обозначает все совпадение, 1 для значения, соответствующего первому "("круглые скобки") в регулярном выражении, и 2 или более для последующих скобок. |
| источник | string |
✔️ | Строка для поиска. |
| typeLiteral | string |
Если указан, то извлеченная подстрока преобразуется в этот тип. Например, typeof(long). |
Возвраты
Если regex находит соответствие в source, возвращается подстрока, сопоставленная с указанной группой записи captureGroup, при необходимости преобразованной в тип typeLiteral.
Если соответствия нет или не удается выполнить преобразование типа, возвращается null.
Примеры
В следующем примере извлекается имя пользователя, электронная почта, возраст из строки. Регулярное выражение используется для извлечения информации.
let _data = datatable(Text: string)
[
"User: James, Email: James@example.com, Age: 29",
"User: David, Age: 35"
];
_data |
extend UserName = extract("User: ([^,]+)", 1, Text),
EmailId = extract(@"Email: (\S+),", 1, Text),
Age = extract(@"\d+", 0, Text)
выходных
| Текст | UserName |
EmailId |
Age |
|---|---|---|---|
| Пользователь: Джеймс, электронная почта James@example.com: , возраст: 29 | Джеймс | James@example.com | 29 |
| Пользователь: Дэвид, Возраст: 35 | Дэвид | 35 |
В следующем примере извлекается месяц из строки Dates и возвращается таблица со строкой даты и месяцем в виде типа int.
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
выходных
| DateString | Month |
|---|---|
| 15-12-2024 | 12 |
| 21-07-2023 | 7 |
| 10-03-2022 | 3 |
Связанный контент
- Функция extract-all
- Функция extract-json
- Оператор синтаксического анализа
- регулярного выражения