Partilhar via


extrato()

Aplica-se a: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

Obtenha uma correspondência para um de expressão regular de uma cadeia de caracteres de origem.

Opcionalmente, converta a substring extraída para o tipo indicado.

Sintaxe

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

Saiba mais sobre convenções de sintaxe.

Parâmetros

Designação Tipo Necessário Descrição
regex string ✔️ Uma expressão regular .
captureGroup int ✔️ O grupo de captura a ser extraído. 0 representa toda a correspondência, 1 para o valor correspondido pelo primeiro '('parênteses')' na expressão regular e 2 ou mais para parênteses subsequentes.
fonte string ✔️ A cadeia de caracteres a ser pesquisada.
tipo literal string Se fornecida, a substring extraída é convertida para esse tipo. Por exemplo, typeof(long).

Devoluções

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

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

Exemplos

Extrair mês da cadeia de caracteres datetime

A consulta a seguir extrai o mês da cadeia de caracteres Dates e retorna uma tabela com a cadeia de caracteres de data e o mês.

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

Output

DateString Mês
15-12-2024 12
21-07-2023 7
10-03-2022 3

Extrair nome de usuário de uma cadeia de caracteres

O exemplo a seguir retorna o nome de usuário da cadeia de caracteres. A expressão regular ([^,]+) corresponde ao texto seguinte "Usuário: " até a próxima vírgula, extraindo efetivamente o nome de usuário.

let Text = "User: JohnDoe, Email: johndoe@example.com, Age: 29";
| print UserName = extract("User: ([^,]+)", 1, Text)

Output

Nome de Utilizador
JoãoDoe