EXPREG
La fonction EXPREG permet l’utilisation d’expressions normales dans d’autres fonctions de texte et fonctions conditionnelles. Cette fonction peut être utilisée avec toutes les fonctions qui demandent une condition (SI, NB.SI, …) ou une correspondance de chaîne (SUBSTITUE, TEXTEAVANT, …). Lorsqu’elle n’est pas utilisée comme une condition ou une fonction de mise en correspondance de texte, EXPREG renvoie l’expression normale sous-jacente comme une valeur de chaîne.
EXPREG(chaîne-expression-régulière; sensible-à-la-casse)
chaîne-expression-régulière : Une valeur de chaîne représentant une expression normale.
sensible-à-la-casse : Une valeur modale facultative qui détermine si l’expression normale devrait être considérée en tenant compte de la casse ou non.
Sensible à la casse (VRAI ou omis) : L’expression normale devrait être considérée en tenant compte de la casse.
Ignorer la casse (FAUX) : L’expression normale ne devrait pas être considérée en tenant compte de la casse.
Notes
La chaîne-expression-régulière doit respecter la norme ICU.
Une expression EXPREG peut être concaténée avec une autre expression EXPREG, comme avec les valeurs de chaînes normales. Si une expression EXPREG est concaténée avec une chaîne normale, le résultat est une chaîne normale, et non plus une expression EXPREG.
Exemples |
---|
=NB.EQUIV("Pour compter tous les mots, utilisez expreg.";EXPREG("\w+")) renvoie 6. =TEXTEAVANT("Obtenir tout le texte avant les premiers chiffres 12345 - et rien après.";EXPREG("[0-9]+")) renvoie « Obtenir tout le texte avant les premiers chiffres ». Disons que chaque cellule de l’intervalle A1:A10 contient un mot, dont cinq contiennent la lettre a. =NB.SI(A1:A10, EXPREG("a+",FAUX)) renvoie 5. =SUBSTITUE("example@email.com: Gilles Allain", EXPREG("[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}") & EXPREG(": *"), "") renvoie "Gilles Allain". =SUBSTITUE("gilles@allain.com", EXPREG("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+)(\.[A-Za-z]{2,4})"), "$2@$1$3") renvoie "allain@gilles.com". =NB.EQUIV("Élément1, élément2, élément3";EXPREG("item[0-9]")) renvoie 2. =NB.EQUIV("Élément1, élément2, élément3";EXPREG("item[0-9]";FAUX)) renvoie 3. Disons qu’A1 est « Adresse courriel du client : example@email.com ». =SI(NB.EQUIV(A1;EXPREG("[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}")), "Nous avons un courriel", "Aucun courriel") renvoie « Nous avons un courriel ». |