Général
- Présentation
- Les Symboles
- Les Métacaractères
- Les Ancres et Classes
- Les options
- Constantes prédéfinies
- Equivalences
- Créer un motif
- Les POSIX
- Les PCRE
- Les Plus des PCRE
- Les Assertions Part I
- Les Assertions Part II
- Motif conditionnel
- Mysql et les regex
- Url Rewriting
- Optimisation
- Aide mémoire
Les PCRE
Les POSIX
Pratique
Linux
Spécial php
- Conseils et Astuces
- Délimiteur PCRE
- Créer une bdd
- Utiliser du BBcode
- Le binaire
- Faire un panier
- Cases à cocher
- Citations imbriquées
- Colorateur syntaxique
- Les list-box ou combo-box
- Faire un diaporama
- Isset ou empty ?
- Une légende au survol
- Site en plusieurs langues
- Requêtes dynamiques
- Gestion des smiley
- Faire un moteur de template
- Timestamp php/mysql
- Timestamp mysql
- Matcher une adresse email
- Controler des données
Les billets de fred
- Les POSIX... mise en pratique !
- Limiter l'accès à un répertoire
- Alternance de couleurs
- Magic_quotes
- Désactiver les short_tags
- Require ou include : Bench
- Cohérence dans les chaines de caractères
- "echo" : lapin ou tortue ?
- Gérer un formulaire avec plusieurs boutons
- Le formulaire a t'il été soumis ?
- J'ai décidé de grossir
- La guerre des étoiles
- La guerre des boutons
- Headers already sent
- IP, IP, IP, houra !
- Créer un itérateur avec PHP5
- On vous conduit vers la lumière
- Comment utiliser MySQL avec PHP
- Non aux booléens !
- Php.ini : dist /recommended
- Include : gouffre ou fêlure ?
- Simple comme les sessions !
- Simplifier le traitement des erreurs
- Structurez vos applications
- Franchement, t'es trop for !
- Notice: Undefined variable (ou index)
- Proscrire les variables auto déclarées
Les Expressions Régulières - Rationnelles - Regex - Regexp
Présentation des deux catégories : POSIX et PCRE:
Les fonctions POSIX- ereg
- eregi
- ereg_replace
- eregi_replace
- split
- spliti
- sql_regcase
- preg_grep
- preg_quote
- preg_match
- prg_match_all
- preg_replace
- preg_replace_callback
- preg_split
Les bibliothèques POSIX & PCRE assurent le support des regex dans PHP.
Les expressions régulières PCRE (Perl) sont jusqu'à 4 à 5 fois plus rapide et plus puissantes que les expressions POSIX.
Définissons d'abord la terminologie
De manière à parler le même langage tout au long de ce cours, nous allons en déterminer la terminologie.Vous connaissez tous ce terme de REGEX qui est une contraction de l'anglais Regular expression traduit en français par Expressions régulières, mais aussi Expressions rationnelles
Nul n'est besoin de polémiquer sur les différentes interprétations que l'on peut faire du terme "Regular expression".
Nous avons choisi d'utiliser le terme d'expression régulière et plus simplement de REGEX. Ces termes seront employés tout au long de ces pages.
Qu'est ce qu'une expression régulière ?
Les expressions régulières (ou regex) peuvent être présentées comme un système très élaboré et très puissant, permettant de :TROUVER (retrouver ==> coupler ==> assortir) des MOTIFS (pattern ==> profils ==> masques ==> structures) et de TRAITER (récupérer ==> extraire ==> remplacer) des éléments à l'intérieur d'un chaîne de caractères. En effet, ce système est conçu uniquement pour traiter des chaînes de caractères.
On commence par déterminer le motif de ce que l'on cherche avant d'en appliquer le traitement souhaité grâce aux fonctions fournies par PHP.
Pour vous aider dans la compréhension de ce formidable outil, le cours sera agrémenté, pour chaque fonction, d'une multitude d'exemples simples, qui se compliqueront par la suite, pour en arriver à des structures assez élaborées.
Chaque exemple est agrémenté d'un commentaire détaillant la lecture du masque, ainsi que son niveau de difficulté à la compréhension.
Notre but n'est pas de faire un cours pointu (quoi que) sur ces expressions régulières, mais plutôt de vous faire comprendre le plus simplement possible, la manière dont ces expressions fonctionnent.
Qu'est ce que je peux faire avec une expression régulière ?
Perso, j'aurais tendance à dire que l'on peut tout faire avec une expression régulière... rien ne semble impossible en effet !Dans la suite de ce cours, nous vous présenterons deux types d'expressions utilisées avec PHP :
POSIX et PCRE (Perl Compatible Regular Expression)
Comme dit en début de page, les expressions PCRE (héritée de Perl) sont bien plus puissantes que les POSIX.
Quelques exemples d'applications :
- vérifier la validité des chaînes de caractères (email, entrée chiffrée, entrée texte, etc...)
- extraire des parties bien précises d'une chaîne, d'un texte, d'une page, etc...
- rendre des emails et url cliquables dans vos textes.
- gérer des éléments spécifiques placés entre vos balises perso, mise en forme, style spécial, etc...
- et bien d'autres encore...
Même si l'envie de vous plonger directement dans le vif du sujet vous tenaille, je vous conseille quand même de lire ces pages afin de vous familiariser avec les symboles, options, règles, etc...
Pour ceux qui sont vraiment pressés, vous pouvez vous servir directement du >>> Tutodeb
