Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Obtenir une correspondance pour une expression régulière à partir d’une chaîne source.
Éventuellement, convertit la sous-chaîne extraite dans le type indiqué.
Syntaxe
extract(
regex,captureGroup,source [,typeLiteral])
En savoir plus sur les conventions de syntaxe.
Paramètres
| Nom | Catégorie | Requise | Descriptif |
|---|---|---|---|
| regex | string |
✔️ | Expression régulière. |
| captureGroup | int |
✔️ | Groupe de capture à extraire. 0 correspond à l’intégralité de la correspondance, 1 pour la valeur mise en correspondance par le premier ' ('parenthèse')' dans l’expression régulière, et 2 ou plus pour les parenthèses suivantes. |
| source | string |
✔️ | Chaîne à rechercher. |
| typeLiteral | string |
Si elle est fournie, la sous-chaîne extraite est convertie dans ce type. Par exemple : typeof(long). |
Retours
Si regex trouve une correspondance dans source : sous-chaîne correspondant au groupe de capture captureGroup indiqué, éventuellement convertie en typeLiteral.
Si aucune correspondance n’est trouvée ou si la conversion de type échoue : null.
Exemples
L’exemple suivant extrait le nom d’utilisateur, l’e-mail, l’âge de la chaîne. L’expression régulière est utilisée pour extraire les informations.
Exécuter le de requête
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 sortie
| Texto | UserName |
EmailId |
Age |
|---|---|---|---|
| Utilisateur : James, Email : James@example.com, Age : 29 | James | James@example.com | 29 |
| Utilisateur : David, Age : 35 | David | 35 |
L’exemple suivant extrait le mois de la chaîne Dates et retourne une table avec la chaîne de date et le mois comme type int.
Exécuter le de requête
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 sortie
| DateString | Month |
|---|---|
| 15-12-2024 | 12 |
| 21-07-2023 | 7 |
| 10-03-2022 | 3 |
Contenu connexe
- extract-all, fonction
- fonction extract-json
- Opérateur d’analyse
- d’expression régulière