EXP.REG
La fonction REGEX permet d’utiliser des expressions régulières dans d’autres fonctions de texte ou conditionnelles. Elle peut être utilisée avec toutes les fonctions qui attendent une condition (SI, NB.SI, …) ou une correspondance de chaîne (SUBSTITUE, TEXTE.AV, …). Lorsque EXP.REG n’est pas utilisé comme condition ou pour établir une correspondance de texte, cette fonction renvoie l’expression régulière sous-jacente sous forme de chaîne.
EXP.REG(chaîne-expression-régulière; sensible-casse)
chaîne-expression-régulière : Une valeur de chaîne représentant une expression régulière.
sensible-casse : Une valeur modale qui détermine si l’expression régulière doit être considérée comme étant sensible à la casse ou non.
Sensible-casse (VRAI ou omis): L’expression régulière doit être considérée comme étant sensible à la casse.
Ignorer la casse (FAUX) : L’expression régulière ne doit pas être considérée comme étant sensible à la casse.
Remarques
La chaîne-expression-régulière doit être conforme au standard ICU.
Une expression EXP.REG peut être concaténée avec une autre EXP.REG, de même qu’avec les valeurs de chaîne classiques. Si une EXP.REG est concaténée avec une chaîne classique, le résultat obtenu est une chaîne classique, et non plus une EXP.REG.
Exemples |
---|
=NB.CORR("Pour compter tous les mots, utilisez exp.reg."; EXP.REG("\w+")) renvoie 6. =TEXTE.AV("Obtenir tout le texte avant les premiers chiffres 12345 - et rien après."; EXP.REG("[09]+")) renvoie « Obtenir tout le texte avant les premiers chiffres ». Imaginons que chaque cellule de la plage A1:A10 contienne un mot, et que 5 d’entre elles contiennent la lettre a. =NB.SI(A1:A10; EXP.REG("a+",FAUX)) renvoie 5. =SUBSTITUE("exemple@email.com : Gilles Allain"; EXP.REG("[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}") & EXP.REG(": *"); "") renvoie "Gilles Allain". =SUBSTITUE("gilles@allain.com"; EXP.REG("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+)(\.[A-Za-z]{2,4})"); "$2@$1$3") renvoie « allain@gilles.com ». =NB.CORR("Élément1, élément2, élément3"; EXP.REG("élément[09]")) renvoie 2. =NB.CORR("Élément1, élément2, élément3"; EXP.REG("élément[09]", FAUX)) renvoie 3. Imaginons que A1 soit "E-mail du client : exemple@email.com". =SI(NB.CORR(A1; EXP.REG("[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}")), "Nous avons un e-mail", "Aucun e-mail") renvoie « Nous avons un e-mail ». |