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 :

L’éditeur de formules présentant la formule =EXT.EXP.REG(A2;"(?<=Nom: )(.*)(?=Date)").

Dans cette formule, les arguments suivants sont utilisés :

  • chaîne-source : A2, la cellule contenant les données que vous voulez rechercher pour obtenir un nom.

  • chaîne-expression-régulière : "(?<=Nom: )(.*)(?=Date)", une expression régulière qui recherche du texte entre la chaîne "Nom: " et la chaîne "Date".

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 :

L’éditeur de formules présentant la formule =EXT.EXP.REG(A2;"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2;4}")

Dans cette formule, les arguments suivants sont utilisés :

  • chaîne-source : A2, la cellule contenant les données que vous voulez rechercher pour obtenir une adresse e-mail.

  • chaîne-expression-régulière : "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2;4}", une expression régulière qui recherche une structure correspondant à une adresse e-mail.

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 :

L’éditeur de formules présentant la formule =EXT.EXP.REG(Fournisseurs::B2;"\w+";RANG(A2)-1).

Dans cette formule, les arguments suivants sont utilisés :

  • chaîne-source : Fournisseurs::B2, la cellule contenant les données que vous voulez rechercher. Dans le cas présent, vous voulez effectuer une recherche dans la liste de cette cellule.

  • chaîne-expression-régulière : "\w+", une expression régulière qui recherche un mot.

  • correspondre-occurrence : RANG(A2)-1. Dans le cas présent, il y a trois correspondances pour chaque EXT.EXP.REG et vous pouvez utiliser une autre fonction, telle que RANG pour définir la correspondance spécifique que vous voulez. RANG(A2) renvoie le numéro de rang de la cellule sélectionnée (2) et -1 est inclus afin de soustraire le rang d’en-tête du résultat ; autrement l’élément renvoyé serait « Pois chiches » (la 2e correspondance) dans cet exemple.

    Si vous omettez correspondre-occurrence, le résultat de chaque fournisseur est toujours le premier mot renvoyé (Lentilles pour le fournisseur A, Pommes pour le fournisseur B et ainsi de suite).

La formule ci-dessus peut facilement être modifiée afin de compléter le tableau avec les autres fournisseurs et les autres articles.

  • Pour renvoyer d’autres produits populaires d’un fournisseur, vous pouvez modifier correspondre-occurrence. Par exemple, pour renvoyer « Pois chiches », le deuxième article le plus populaire du fournisseur A, vous pouvez remplacer la référence de cellule A2 par A3 dans correspondre-occurrence.

  • Pour renvoyer les valeurs d’un autre fournisseur, vous pouvez modifier chaîne-source. Par exemple, pour renvoyer « Pommes », le deuxième article le plus populaire du fournisseur B, vous pouvez remplacer la référence de cellule A2 par A3 dans chaîne-source.

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 ».

Voir aussiEXP.REG
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
Avez-vous trouvé cet article utile ?
Limite de caractères : 250
La limite maximale des caractères est 250.
Merci de votre feedback.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.