Compartilhar via


extract()

Aplica-se a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Obtenha uma correspondência para uma expressão regular com base em uma cadeia de caracteres de origem.

Opcionalmente converte a subcadeia extraída no tipo indicado.

Sintaxe

extract( regex,captureGroup,source [,typeLiteral])

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Tipo Obrigatória Descrição
regex string ✔️ uma expressão regular.
Grupo de captura int ✔️ O grupo de captura a ser extraído. 0 representa a correspondência inteira, 1 para o valor correspondido pelo primeiro '('parêntese')' na expressão regular e 2 ou mais para parênteses subsequentes.
origem string ✔️ A cadeia de caracteres a ser pesquisada.
typeLiteral string Se for fornecido, a subcadeia de caracteres extraída será convertida para esse tipo. Por exemplo, typeof(long).

Devoluções

Se regex encontrar uma correspondência em source: a substring correspondente ao grupo de captura captureGroup indicado, convertida, opcionalmente, em typeLiteral.

Se não houver correspondência, ou se a conversão do tipo falhar: null.

Exemplos

O exemplo a seguir extrai o nome de usuário, o email, a idade da cadeia de caracteres. A expressão regular é usada para extrair as informações.

executar o de consulta

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)

de saída

Texto UserName EmailId Age
Usuário: James, Email: James@example.com, Idade: 29 anos Tiago James@example.com 29
Usuário: David, Idade: 35 anos David 35

O exemplo a seguir extrai o mês da cadeia Dates de caracteres e retorna uma tabela com a cadeia de caracteres de data e o mês como tipo int.

executar o de consulta

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

de saída

DateString Month
15-12-2024 12
21-07-2023 7
10-03-2022 3