La fonction REGEXEXTRACT vous permet d’extraire du texte d’une chaîne en fonction d’une expression régulière fournie. Vous pouvez extraire la première correspondance, toutes les correspondances ou capturer des groupes à partir de la première correspondance.
Syntaxe
La fonction REGEXEXTRACT extrait les chaînes dans le texte fourni qui correspond au modèle.
La syntaxe de la fonction REGEXEXTRACT est la suivante :
REGEXEXTRACT(text, pattern, [return_mode], [case_sensitivity])
| Argument | Description |
|---|---|
|
texte (obligatoire) |
Texte ou référence à une cellule contenant le texte à partir duquel vous souhaitez extraire des chaînes. |
|
modèle (obligatoire) |
Expression régulière (« expression régulière ») qui décrit le modèle de texte que vous souhaitez extraire. |
| return_mode | Nombre qui spécifie les chaînes que vous souhaitez extraire. Par défaut, le mode de retour est 0. Les valeurs possibles sont les suivantes : 0 : Retourner la première chaîne qui correspond au modèle 1 : Retourner toutes les chaînes qui correspondent au modèle sous forme de tableau 2 : Retourner des groupes de capture à partir de la première correspondance sous forme de tableau Note: Les groupes de capture font partie d’un modèle regex entouré de parenthèses « (...) ». Ils vous permettent de retourner des parties distinctes d’une seule correspondance individuellement. |
| case_sensitivity | Détermine si la correspondance respecte la casse. Par défaut, la correspondance respecte la casse. Entrez l’une des touches suivantes : 0 : Respect de la casse 1 : Non sensible à la casse |
Remarque
Le modèle le plus simple est le texte littéral que vous souhaitez faire correspondre. Par exemple, pour faire correspondre le texte « Match Me », vous pouvez utiliser le modèle « Match Me ».
Des symboles appelés « jetons » peuvent également être utilisés qui correspondent à une variété de caractères. Voici quelques jetons simples à référencer :
« [0-9] » : n’importe quel chiffre numérique
« [a-z] " : caractère dans la plage de a à z
« . » : n’importe quel caractère
« a » : caractère « a »
« a* » : zéro ou plus « a »
« a+ » : un ou plusieurs « a »
Toutes les expressions régulières pour cette fonction, ainsi que REGEXTEST et REGEXREPLACE utilisent la « saveur » PCRE2 de regex.
REGEXEXTRACT retourne toujours des valeurs de texte. Vous pouvez convertir ces résultats en nombre à l’aide de la fonction VALUE.
Exemples
Copiez les exemples de données et collez-les dans la cellule A1 d’une nouvelle feuille de calcul Excel. Si nécessaire, vous pouvez modifier la largeur des colonnes pour afficher toutes les données.
Exemple 1
Extraire des noms basés sur des lettres majuscules avec le modèle « [A-Z][a-z]+ »
| Données |
|---|
| DylanWilliams |
| Formules |
| =REGEXEXTRACT(A2,"[A-Z][a-z]+ ») |
| =REGEXEXTRACT(A2,"[A-Z][a-z]+ »,1) |
L’illustration suivante montre les résultats.
Exemple 2
Extraire les numéros de téléphone en fonction de leur structure avec le modèle « [0-9()]+ [0-9-]+ »
| Données |
|---|
| Sonia Rees (378) 555-4195 Angel Brown (878) 555-8622 Blake Martin (437) 555-8987 William Kirby (619) 555-4212 Avery Smith (579) 555-5658 Parker Jones (346) 555-0925 Liam Small (405) 555-0887 Hollie Rees (666) 555-1872 |
| Formules |
| =REGEXEXTRACT(A2,"[0-9()]+ [0-9-]+ »,1) |
L’illustration suivante montre le résultat.