EXT.EXP.REG
La fonction EXT.EXP.REG renvoie les correspondances ou les groupes de captures dans une correspondance d’une expression régulière donnée dans une chaîne source.
EXT.EXP.REG(chaîne-source; chaîne-expression-régulière; correspondre-occurrence; capturer-occurrence-groupe)
chaîne-source : Valeur de chaîne servant à établir une correspondance.
chaîne-expression-régulière : Valeur de chaîne représentant une expression régulière, servant à établir une correspondance avec chaîne-source.
correspondre-occurrence : Nombre entier facultatif indiquant la correspondance à renvoyer, s’il existe plusieurs correspondances. Les nombres entiers négatifs sont acceptés et permettent d’accéder aux correspondances à l’envers, avec -1 comme dernière correspondance, ainsi de suite. Si 0 est attribué, un tableau de toutes les correspondances est renvoyé. Si omis, la première correspondance est renvoyée.
capturer-occurrence-groupe : Nombre entier facultatif indiquant le groupe de capture à renvoyer au sein d’une correspondance, si des groupes de capture sont présents dans l’expression régulière. Les valeurs négatives ne sont pas acceptées. Si 0 est renvoyé, un tableau de tous les groupes de capture est renvoyé. Si omis, la totalité de la correspondance est renvoyée.
Remarques
La chaîne-expression-régulière doit être conforme au standard ICU.
Exemples |
---|
Si vous avez des données qui ne contiennent pas facilement dans les rangs et colonnes d’une feuille de calcul, vous pouvez utiliser EXT.EXP.REG pour les simplifier. Par exemple, dans le tableau ci-dessous, les données ont une certaine structure, mais il peut être difficile de séparer manuellement les données par évaluation dans plusieurs cellules. |
A | |
---|---|
1 | Évaluations des utilisateurs |
2 | E-mail: jtalma@icloud.com Nom: Julie Talma Date: 17/05/2021 |
3 | E-mail: danny_rico@icloud.com Nom: Danny Rico Date: 02/06/2021 |
Pour corriger cela, vous pouvez ajouter des colonnes au tableau pour Nom, E-mail, Classement et Date, puis utiliser EXT.EXP.REG afin de trouver les données souhaitées et les renvoyer dans la cellule correspondante. Par exemple, vous pouvez saisir la formule suivante pour renvoyer un nom : Dans cette formule, les arguments suivants sont utilisés :
Cette formule peut être répétée pour chaque rang de données afin de renvoyer le nom de chaque personne ayant répondu au sondage en modifiant chaîne-source conformément aux autres cellules contenant des informations sur les évaluations des utilisateurs. |
Pour corriger cela, vous pouvez ajouter des colonnes au tableau pour Nom, E-mail, Classement et Date, puis utiliser EXT.EXP.REG afin de trouver les données souhaitées et les renvoyer dans la cellule correspondante. Par exemple, vous pouvez saisir la formule suivante : Dans cette formule, les arguments suivants sont utilisés :
|
Réorganiser des données dans une liste à l’aide de correspondre-occurrence |
---|
Parfois, vous pouvez avoir des données qui ressemblent au tableau ci-dessous (intitulé Fournisseurs), qui regroupe des valeurs dans une même cellule : |
Fournisseur | Article |
---|---|
A | Lentilles, Pois chiches, Haricots de Lima |
B | Pommes, Oranges, Citrons |
C | Quinoa, Riz, Graines de chia |
Pour séparer les valeurs en fonction du fournisseur et du classement, vous pouvez d’abord créer un nouveau tableau, comme celui ci-dessous : |
A | B | C | D | |
---|---|---|---|---|
1 | Classement | A | B | C |
2 | 1 | |||
3 | 2 | |||
4 | 3 |
Pour renvoyer Lentilles, l’article le mieux coté pour le fournisseur A, vous pouvez utiliser une formule comme celle-ci dans la cellule B2 du nouveau tableau : Dans cette formule, les arguments suivants sont utilisés :
|
La formule ci-dessus peut facilement être modifiée afin de compléter le tableau avec les autres fournisseurs et les autres articles.
|
Exemples supplémentaires |
---|
Imaginons que A1 contienne "marina@example.com john@example.ca michel@example.de". =EXT.EXP.REG(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})") renvoie « marina@example.com ». =EXT.EXP.REG(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; 2) renvoie « gilles@example.ca ». =EXT.EXP.REG(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; -1) renvoie « michel@example.de ». =EXT.EXP.REG(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; 1; 1) renvoie « marina ». =EXT.EXP.REG(A1; "([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"; 2; 2) renvoie « example.ca ». |