extract()
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])
Découvrez les conventions de syntaxe.
Paramètres
Nom | Type | Obligatoire | Description |
---|---|---|---|
Regex | string |
✔️ | Expression régulière. |
captureGroup | int |
✔️ | Groupe de capture à extraire. 0 représente la correspondance entière, 1 pour la valeur mise en correspondance par la première « 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
Une définition de Duration
est recherchée dans l’exemple de chaîne Trace
.
La correspondance est convertie en real
, puis multipliée par une constante de temps (1s
) pour que Duration
soit de type timespan
. Dans cet exemple, elle est égale à 123,45 secondes :
T
| extend Trace="A=1, B=2, Duration=123.45, ..."
| extend Duration = extract("Duration=([0-9.]+)", 1, Trace, typeof(real)) * time(1s)
Cet exemple est équivalent à substring(Text, 2, 4)
:
extract("^.{2,2}(.{4,4})", 1, Text)
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour