====== Expressions régulières ======
Les [[https://fr.wikipedia.org/wiki/Expression_rationnelle|expressions rationnelles]] (ou expression régulières) permettent de décrire des motifs très élaborés de chaînes de caractères.
Sources :
* [[http://www.regular-expressions.info/quickstart.html|Regular Expressions Quick Start]] (en)
===== Testeurs en ligne =====
Les testeurs requièrent l'activation de **javascript** sur le navigateur utilisé
* Regex 01.com, pratique et pédagogique((Traduit l'expression en langage naturel (en). )). Il permet de choisir la variante de syntaxe d'expressions régulières utilisée, propose un debugger… : https://regex101.com/
* RegExr, aide au survol (expression et chaîne testée). Le plus, un tutoriel en colonne gauche, sans quitter l'expression que l'on teste : http://www.regexr.com/
* Regexpal, minimaliste mais efficace : http://regexpal.com/
===== À la sauce sed =====
Pour bénéficier de toute la puissance des expressions rationnelles, il faut utiliser le paramètre "-r" : //sed -r// …
* [[https://www.tutorialspoint.com/unix/unix-regular-expressions.htm|Unix / Linux - Regular Expressions with SED]]
* [[https://www.gnu.org/software/sed/manual/html_node/Regular-Expressions.html|3.3 Overview of Regular Expression Syntax]]
===== À la sauce Analytics =====
Le dialecte d'expressions régulières admises par Google Analytics est abondamment documenté :
* [[https://support.google.com/analytics/answer/1034324?hl=en|About regular expressions]] (en) (google)
* [[https://support.google.com/a/answer/1371417?hl=en|Examples of Regular Expressions]] (en) (google)
* [[http://www.lunametrics.com/regex-book/Regular-Expressions-Google-Analytics.pdf|Regular Expressions for Google Analytics]] (en) (lunametrics.com) (PDF)
===== À la sauce Kwrite ou Kate (KDE) =====
Source : [[https://docs.kde.org/stable5/en/kate/katepart/regular-expressions.html|Appendix A. Regular Expressions]] (en) (docs.kde.org)
Lorsqu'on utilise les expressions rationnelles dans une opération de rechercher/remplacer, les motifs sont appelés avec la syntaxe suivante : \. Autrement dit, le "\" joue le rôle habituellement rempli par le "$". Par exemple :
* Find: ([a-z])([0-9])
* Replace: \2\1