Partager via


extract()

S’applique à : ✅Microsoft Fabric

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 Text = "User: JohnDoe, Email: johndoe@example.com, Age: 29";
print UserName = extract("User: ([^,]+)", 1, Text),
EmailId = extract(@"Email: (\S+),", 1, Text),
Age = extract(@"\d+", 0, Text)

de sortie

Nom d’utilisateur EmailId Âge
JohnDoe johndoe@example.com 29

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 Mois
15-12-2024 12
21-07-2023 7
10-03-2022 3