1. Livres et vidéos
  2. Expressions régulières - Syntaxe et mise en oeuvre (avec exercices et corrigés)

Expressions régulières Syntaxe et mise en oeuvre (avec exercices et corrigés)

  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne
  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7

Présentation

Ce livre s'adresse à tout informaticien (étudiant, développeur, ingénieur système, ...) désirant comprendre et maîtriser les expressions régulières.

Il commence par un bref rappel de l'origine mathématique des expressions régulières, puis détaille leurs différents types, depuis les expressions de sélection du shell jusqu'aux expressions régulières étendues interprétées par différents langages tels Perl ou Python.

L'auteur a choisi une approche résolument pratique et les chapitres suivants présentent les expressions régulières dans le contexte des différentes commandes qui ont contribué au succès d'Unix et Linux (shells, find, ed, sed, ex, vi, vim, bvi, grep, egrep, expr, awk, du, lex), puis dans celui des fonctions d'évaluation (glob(), regcomp(), regexec()) et de différents langages (Perl, Python, Javascript).

De nombreux exemples ainsi que des exercices, corrigés de façon détaillée, montrent de façon pédagogique et progressive comment produire des expressions régulières fiables et compréhensibles.

La dernière partie propose des synthèses relatives aux différents types d'expressions et à leurs méta-caractères, liste les principaux outils les utilisant, les classes de caractères POSIX, ainsi que des outils de contrôle et des méthodes de validation, parfois visuelles, des expressions régulières.

Les explications détaillées permettent une compréhension fine de la signification des méta-caractères et des expressions qui les emploient, permettant au lecteur de créer ses propres expressions régulières et de comprendre celles écrites par d'autres personnes.

D'autre part, des conseils d'écriture aident à transmettre les expressions régulières aux outils auxquels elles sont destinées sans risque de modifications indésirables, et ainsi à éviter des erreurs classiques mais néanmoins fréquentes et parfois difficiles à localiser.

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.


Les chapitres du livre :
Avant-propos – Introduction – Les interpréteurs de commandes, ou shell – find, la commande de recherche de fichiers – ed, l'éditeur ligne – sed, l'éditeur de flux (stream editor) – ex, l'éditeur ligne de vi – vi, le premier éditeur plein écran – vim, l'éditeur vi amélioré (Vi IMproved) – bvi, l'éditeur binaire/hexadécimal plein écran – grep, la commande de recherche de lignes – expr, la commande d'évaluation d'expressions – awk, la commande de traitement de fichiers – du, l'affichage de l'usage des disques – lex, le générateur d'analyseurs lexicaux – glob(), la fonction de sélection de pathnames – rescomp(), regexec(), la gestion des ER – hl, une commande de colorisation – Les expressions régulières en Python – Les expressions régulières en Perl – Les expressions régulières en JavaScript – Synthèse des types d'expression – Les classes de caractères POSIX – Équivalences d'expressions régulières – Outils de validation d'expressions régulières – Quelques exercices récapitulatifs – Annexes

Table des matières

  • Introduction
    • 1. Qu'est-ce qu'une expression régulière ?
    • 2. Qu'est-ce qu'un métacaractère ?
    • 3. Origine des expressions régulières
    • 4. Avertissement relatif aux expressions régulières
    • 5. Avertissement relatif aux commandes GNU/Linux
    • 6. Avertissement relatif à la portabilité
    • 7. Rappels de base concernant le shell
    • 8. Conseil important pour la qualité et la fiabilité du code
    • 9. Programme d'aide à la compréhension du shell
  • Les interpréteurs de commandes, ou shells
    • 1. Description
    • 2. Historique
    • 3. Les caractères de sélection de noms de fichiers
      • 3.1 La découverte des expressions régulières par l'utilisateur
      • 3.2 La spécificité des expressions de sélection du shell
      • 3.3 Rappel sur les fichiers cachés
      • 3.4 Le métacaractère *
      • 3.5 Le métacaractère ?
      • 3.6 Les métacaractères [ ]
    • 4. Les autres caractères spéciaux
    • 5. La commande de traitements sélectifs
      • 5.1 Le métacaractère *
        • 5.1.1 Exemple 1
        • 5.1.2 Exemple 2
      • 5.2 Le métacaractère ?
        • 5.2.1 Exemple
      • 5.3 Les métacaractères [ ]
        • 5.3.1 Exemple 1
        • 5.3.2 Exemple 2
        • 5.3.3 Exemple 3
        • 5.3.4 Conseil d'écriture
    • 6. Mise en garde sur le décodage des arguments
    • 7. Exercices
      • 7.1 Exercice 1
      • 7.2 Exercice 2
      • 7.3 Exercice 3
      • 7.4 Exercice 4
      • 7.5 Exercice 5
      • 7.6 Exercice 6
      • 7.7 Exercice 7
      • 7.8 Exercice 8
  • find, la commande de recherche de fichiers
    • 1. Description
    • 2. Principe de fonctionnement
    • 3. Les options liées à l'i-node
      • 3.1 Option -type
      • 3.2 Option -perm
      • 3.3 Option -links
      • 3.4 Option -user
      • 3.5 Option -uid
      • 3.6 Option -group
      • 3.7 Option -size
      • 3.8 Option -inum
      • 3.9 Option -atime
      • 3.10 Option -mtime
      • 3.11 Option -exec
      • 3.12 Option -ok
      • 3.13 Option -print
      • 3.14 Option -newer
      • 3.15 Option -ls
      • 3.16 Option -prune
      • 3.17 Autres options
    • 4. Les options liées au nom
      • 4.1 Option -name
      • 4.2 Option -iname
      • 4.3 Option -lname
      • 4.4 Option -ilname
      • 4.5 Option -path
      • 4.6 Option -ipath
      • 4.7 Option -regex
      • 4.8 Option -iregex
      • 4.9 Option -regextype
      • 4.10 Option -wholename
      • 4.11 Option -iwholename
    • 5. Les expressions de sélection
      • 5.1 Utilisation du caractère ?
      • 5.2 Utilisation du caractère *
      • 5.3 Utilisation des caractères [ et ]
    • 6. Les expressions étendues
      • 6.1 Utilisation du caractère .
      • 6.2 Utilisation des caractères [ et ]
      • 6.3 Utilisation du caractère *
      • 6.4 Utilisation du caractère +
      • 6.5 Utilisation du caractère ?
      • 6.6 Utilisation du caractère |
      • 6.7 Utilisation des caractères ( et )
      • 6.8 Utilisation du caractère ^
      • 6.9 Utilisation du caractère $
      • 6.10 Utilisation du caractère \
      • 6.11 Utilisation des caractères { et }
    • 7. Exercices
      • 7.1 Exercice 1
      • 7.2 Exercice 2
      • 7.3 Exercice 3
      • 7.4 Exercice 4
      • 7.5 Exercice 5
      • 7.6 Exercice 6
  • ed, l'éditeur ligne
    • 1. Description
    • 2. Rappel de quelques commandes
      • 2.1 Les différents modes
      • 2.2 Adressage des lignes
        • 2.2.1 Références à des lignes par numéros
        • 2.2.2 Références à des lignes par des recherches
      • 2.3 Recherche de chaînes de caractères
      • 2.4 Recherche globale de chaînes de caractères
      • 2.5 Saisie de texte
      • 2.6 Suppression de lignes
      • 2.7 Affichage des lignes
      • 2.8 Substitution de chaînes de caractères
      • 2.9 Enregistrement des modifications
      • 2.10 Sortie de l'éditeur
    • 3. Les expressions régulières
      • 3.1 Généralités
      • 3.2 Utilisation du caractère ^
        • 3.2.1 Signification
        • 3.2.2 Recherche d'une expression en début de ligne
        • 3.2.3 Insertion d'une chaîne en début de ligne
        • 3.2.4 Substitution d'une expression en début de ligne
      • 3.3 Utilisation du caractère $
        • 3.3.1 Ajout d'une chaîne en fin de ligne
        • 3.3.2 Substitution d'une expression en fin de chaîne
      • 3.4 Utilisation du caractère .
      • 3.5 Utilisation des caractères [ ]
      • 3.6 Utilisation du caractère *
      • 3.7 Utilisation des caractères \< et \>
        • 3.7.1 Recherche d'un début de mot
        • 3.7.2 Recherche d'une fin de mot
        • 3.7.3 Recherche d'un mot entier
      • 3.8 Utilisation du caractère &
      • 3.9 Référence à des expressions
    • 4. Exercices
      • 4.1 Suppression en fin de ligne
        • 4.1.1 Exercice 1
      • 4.2 Insertion en début de ligne
        • 4.2.1 Exercice 2
      • 4.3 Substitution de chaîne
        • 4.3.1 Exercice 3
      • 4.4 Substitution avec références
        • 4.4.1 Exercice 4
        • 4.4.2 Exercice 5
        • 4.4.3 Exercice 6
        • 4.4.4 Exercice 7
      • 4.5 Affichage sélectif
        • 4.5.1 Exercice 8
        • 4.5.2 Exercice 9
        • 4.5.3 Exercice 10
      • 4.6 Insertion en début de ligne
        • 4.6.1 Exercice 11
  • sed, l'éditeur de flux (stream editor)
    • 1. Description
    • 2. Rappels de fonctionnement
      • 2.1 Principe de fonctionnement
      • 2.2 Adressage des lignes
        • 2.2.1 Principe d'adressage
        • 2.2.2 Références à des lignes par numéros
        • 2.2.3 Références à des lignes par des recherches
      • 2.3 Rappel de quelques commandes
        • 2.3.1 Recherche de chaînes de caractères
        • 2.3.2 Ajout de texte
        • 2.3.3 Insertion de texte
        • 2.3.4 Remplacement de texte
        • 2.3.5 Suppression de texte
        • 2.3.6 Substitution de texte
        • 2.3.7 Définition d'étiquette
        • 2.3.8 Branchement inconditionnel
        • 2.3.9 Branchement conditionnel
        • 2.3.10 Groupement d'instructions
    • 3. Les expressions basiques
      • 3.1 Utilisation du caractère ^
        • 3.1.1 Signification
        • 3.1.2 Recherche d'une expression en début de ligne
        • 3.1.3 Insertion d'une chaîne en début de ligne
        • 3.1.4 Substitution d'une expression en début de ligne
      • 3.2 Utilisation du caractère $
        • 3.2.1 Signification
        • 3.2.2 Ajout d'une chaîne en fin de ligne
        • 3.2.3 Substitution d'une expression en fin de ligne
      • 3.3 Utilisation du caractère .
      • 3.4 Utilisation des caractères [ ]
      • 3.5 Utilisation du caractère *
      • 3.6 Utilisation du caractère &
      • 3.7 Référence à des expressions
    • 4. Les expressions étendues
      • 4.1 Avertissement
      • 4.2 Utilisation du caractère .
      • 4.3 Utilisation des caractères [ et ]
      • 4.4 Utilisation du caractère *
      • 4.5 Utilisation du caractère +
      • 4.6 Utilisation du caractère ?
      • 4.7 Utilisation du caractère |
      • 4.8 Utilisation des caractères ( et )
      • 4.9 Utilisation du caractère ^
      • 4.10 Utilisation du caractère $
      • 4.11 Utilisation du caractère \
      • 4.12 Utilisation des caractères { et }
    • 5. Exercices
      • 5.1 Exercice 1
      • 5.2 Exercice 2
      • 5.3 Exercice 3
      • 5.4 Exercice 4
      • 5.5 Exercice 5
      • 5.6 Exercice 6
  • ex, l'éditeur ligne de vi
    • 1. Description
    • 2. Principe de fonctionnement
    • 3. Rappel de quelques commandes
      • 3.1 Les différents modes
        • 3.1.1 Interface utilisateur
        • 3.1.2 Mode commandes, mode saisie
      • 3.2 Adressage des lignes
        • 3.2.1 Références à des lignes par numéros
        • 3.2.2 Références à des lignes par des recherches
      • 3.3 Recherche de chaînes de caractères
      • 3.4 Recherche globale de chaînes de caractères
      • 3.5 Saisie de texte
      • 3.6 Suppression de lignes
        • 3.6.1 Suppression de la ligne courante
        • 3.6.2 Suppression d'une ligne
        • 3.6.3 Suppression d'un groupe de lignes
      • 3.7 Affichage des lignes
      • 3.8 Substitution de chaînes de caractères
      • 3.9 Manipulation de la casse des lettres
        • 3.9.1 Séquence \u
        • 3.9.2 Séquence \U
        • 3.9.3 Séquence \l
        • 3.9.4 Séquence \L
        • 3.9.5 Séquence \e ou \E
      • 3.10 Enregistrement des modifications
      • 3.11 Sortie de l'éditeur
    • 4. Quelques spécificités de ex par rapport à ed
    • 5. Les expressions régulières
      • 5.1 Généralités
      • 5.2 Utilisation du caractère ^
        • 5.2.1 Utilisation
        • 5.2.2 Recherche d'une expression en début de ligne
        • 5.2.3 Insertion d'une chaîne en début de ligne
        • 5.2.4 Substitution d'une expression en début de ligne
      • 5.3 Utilisation du caractère $
        • 5.3.1 Ajout d'une chaîne en fin de ligne
        • 5.3.2 Substitution d'une expression en fin de chaîne
      • 5.4 Utilisation du caractère .
      • 5.5 Utilisation des caractères [ ]
      • 5.6 Utilisation du caractère *
      • 5.7 Utilisation des caractères \< et \>
        • 5.7.1 Recherche d'un début de mot
        • 5.7.2 Recherche d'une fin de mot
        • 5.7.3 Recherche d'un mot entier
      • 5.8 Utilisation du caractère &
      • 5.9 Référence à des expressions
    • 6. Exercices
      • 6.1 Exercice 1
  • vi, le premier éditeur plein écran
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Rappel de quelques commandes
        • 2.2.1 Édition d'un fichier
        • 2.2.2 Ajout de texte
        • 2.2.3 Insertion de texte
        • 2.2.4 Modification de texte
        • 2.2.5 Suppression de texte
        • 2.2.6 Enregistrement des modifications
        • 2.2.7 Accès au mode ligne de ex
        • 2.2.8 Accès aux variables de paramétrage
    • 3. Les expressions régulières
      • 3.1 Généralités
      • 3.2 Recherches de chaînes de caractères
      • 3.3 Utilisation du caractère ^
      • 3.4 Utilisation du caractère $
      • 3.5 Utilisation du caractère .
      • 3.6 Utilisation des caractères [ ]
      • 3.7 Utilisation du caractère *
      • 3.8 Utilisation des caractères \< et \>
        • 3.8.1 Recherche d'un début de mot
        • 3.8.2 Recherche d'une fin de mot
        • 3.8.3 Recherche d'un mot entier
  • vim, l'éditeur vi amélioré (Vi IMproved)
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Spécificités
        • 2.2.1 Avertissement
        • 2.2.2 Mise en surbrillance
        • 2.2.3 Reconnaissance de caractères particuliers
        • 2.2.4 Accès aux expressions régulières étendues
    • 3. Les expressions régulières basiques
      • 3.1 Utilisation du caractère ^
      • 3.2 Utilisation du caractère $
      • 3.3 Utilisation du caractère .
      • 3.4 Utilisation des caractères [ ]
      • 3.5 Utilisation du caractère *
      • 3.6 Utilisation des caractères \< et \>
        • 3.6.1 Recherche d'un début de mot
        • 3.6.2 Recherche d'une fin de mot
        • 3.6.3 Recherche d'un mot entier
    • 4. Les expressions régulières étendues
      • 4.1 Utilisation du caractère ^
      • 4.2 Utilisation du caractère $
      • 4.3 Utilisation du caractère .
      • 4.4 Utilisation des caractères [ ]
      • 4.5 Utilisation des caractères \( ... \)
      • 4.6 Utilisation du caractère *
      • 4.7 Utilisation des caractères \+
      • 4.8 Utilisation des caractères \ ?
      • 4.9 Utilisation des caractères \{n,p}
      • 4.10 Utilisation des caractères \{n,}
      • 4.11 Utilisation des caractères \{,p}
      • 4.12 Utilisation des caractères \{n}
      • 4.13 Utilisation des caractères \{}
      • 4.14 Utilisation des caractères \{-n,p}
      • 4.15 Utilisation des caractères \{-n}
      • 4.16 Utilisation des caractères \{-n,}
      • 4.17 Utilisation des caractères \{-,p}
      • 4.18 Utilisation des caractères \{-}
      • 4.19 Utilisation des caractères \|
      • 4.20 Utilisation des caractères \< et \>
  • bvi, l'éditeur binaire/hexadécimal plein écran
    • 1. Description
    • 2. Points communs avec vi
    • 3. Spécificités de bvi
    • 4. Rappel de quelques commandes
      • 4.1 Avertissement
      • 4.2 Positionnement en début de ligne
      • 4.3 Positionnement en fin de ligne
      • 4.4 Déplacements du curseur
      • 4.5 Ajout d'octets
      • 4.6 Insertion d'octets
      • 4.7 Remplacement d'octets
      • 4.8 Suppression d'octets
      • 4.9 Écriture du fichier modifié
    • 5. Les expressions régulières
      • 5.1 Généralités
      • 5.2 Recherche en début de ligne
      • 5.3 Recherche en fin de ligne
      • 5.4 Recherche d'expressions régulières
        • 5.4.1 Modes de recherche
        • 5.4.2 Utilisation du caractère .
        • 5.4.3 Utilisation des caractères [ ]
        • 5.4.4 Utilisation du caractère *
    • 6. Commande bmore
    • 7. Exercices
      • 7.1 Exercice 1
      • 7.2 Exercice 2
      • 7.3 Exercice 3
      • 7.4 Exercice 4
      • 7.5 Exercice 5
      • 7.6 Exercice 6
      • 7.7 Exercice 7
      • 7.8 Exercice 8
  • grep, la commande de recherche de lignes
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Rappel de quelques options
    • 3. Les expressions basiques
      • 3.1 Généralités
      • 3.2 Utilisation du caractère ^
      • 3.3 Utilisation du caractère $
      • 3.4 Utilisation du caractère .
      • 3.5 Utilisation du caractère *
      • 3.6 Utilisation des caractères [ ]
      • 3.7 Utilisation des caractères \< et \>
      • 3.8 Utilisation du caractère \
      • 3.9 Classes de caractères
    • 4. Les expressions étendues
      • 4.1 Généralités
      • 4.2 Utilisation des caractères ( )
      • 4.3 Utilisation du caractère |
      • 4.4 Utilisation du caractère ?
      • 4.5 Utilisation du caractère *
      • 4.6 Utilisation du caractère +
      • 4.7 Utilisation des caractères { }
    • 5. Exercices
      • 5.1 Exercice 1
      • 5.2 Exercice 2
      • 5.3 Exercice 3
      • 5.4 Exercice 4
      • 5.5 Exercice 5
      • 5.6 Exercice 6
  • expr, la commande d'évaluation d'expressions
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Les parenthèses
      • 2.3 Les opérateurs arithmétiques
      • 2.4 Les opérateurs de comparaison
      • 2.5 Les opérateurs booléens
      • 2.6 La comparaison à une expression régulière
      • 2.7 Extraction d'une chaîne correspondant à une expression
    • 3. Attention aux pièges
      • 3.1 Interprétation par le shell
      • 3.2 Respect de la syntaxe
      • 3.3 Valeurs nulles
    • 4. Exercices
      • 4.1 Exercice 1
      • 4.2 Exercice 2
  • awk, la commande de traitement de fichiers
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Principe général
      • 2.2 Expression de sélection
      • 2.3 Séparateur de champs
      • 2.4 Éléments de syntaxe du langage
        • 2.4.1 Généralités
        • 2.4.2 Instructions
        • 2.4.3 Variables
        • 2.4.4 Tableaux associatifs
        • 2.4.5 Fonctions définies par l'utilisateur
        • 2.4.6 Fonctions intégrées au langage
        • 2.4.7 Opérations arithmétiques
        • 2.4.8 Tests
        • 2.4.9 Contrôle de boucles
    • 3. Les expressions régulières
      • 3.1 Utilisation
      • 3.2 Recherche de correspondance
        • 3.2.1 Recherche avec /.../
        • 3.2.2 Recherche avec ~
        • 3.2.3 Recherche avec !~
      • 3.3 Utilisation du caractère ^
      • 3.4 Utilisation du caractère $
      • 3.5 Utilisation du caractère .
      • 3.6 Utilisation des caractères [ ]
      • 3.7 Utilisation du caractère *
      • 3.8 Recherche d'un mot entier
    • 4. Fonctions de manipulation de chaînes
      • 4.1 Fonction length()
      • 4.2 Fonction sub()
      • 4.3 Fonction gsub()
      • 4.4 Fonction match()
    • 5. Exercices
      • 5.1 Exercice 1
      • 5.2 Exercice 2
      • 5.3 Exercice 3
      • 5.4 Exercice 4
      • 5.5 Exercice 5
  • du, l’affichage de l'usage des disques
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Options relatives aux expressions génériques
        • 2.2.1 Option -X, ou --exclude-from=FICHIER
        • 2.2.2 Option --exclude=MODELE
  • lex, le générateur d'analyseurs lexicaux
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Structure d'un programme lex
        • 2.2.1 Première section
        • 2.2.2 Deuxième section
        • 2.2.3 Troisième section
      • 2.3 Génération du binaire
    • 3. Les expressions régulières
      • 3.1 Localisation des expressions régulières
      • 3.2 Utilisation du caractère "
      • 3.3 Utilisation du caractère \
      • 3.4 Utilisation des caractères et
      • 3.5 Utilisation du caractère .
      • 3.6 Utilisation des caractères [ ]
      • 3.7 Utilisation du caractère ^
      • 3.8 Utilisation des caractères ( )
      • 3.9 Utilisation du caractère *
      • 3.10 Utilisation du caractère +
      • 3.11 Utilisation du caractère ?
      • 3.12 Utilisation des caractères { }
      • 3.13 Utilisation du caractère |
    • 4. Les règles
      • 4.1 Localisation des règles de traitement
      • 4.2 Utilisation du caractère ^
      • 4.3 Utilisation du caractère $
      • 4.4 Utilisation du caractère /
    • 5. Exercices
      • 5.1 Exercice 1
      • 5.2 Exercice 2
      • 5.3 Exercice 3
      • 5.4 Exercice 4
      • 5.5 Exercice 5
      • 5.6 Exercice 6
      • 5.7 Exercice 7
      • 5.8 Exercice 8
      • 5.9 Exercice 9
      • 5.10 Exercice 10
      • 5.11 Exercice 11
  • glob(), la fonction de sélection de pathnames
    • 1. Description
    • 2. Principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Utilisation
    • 3. Exercices
      • 3.1 Exercice 1
      • 3.2 Exercice 2
  • regcomp(), regexec(), la gestion des ER
    • 1. Description
    • 2. Rappel du principe de fonctionnement
      • 2.1 Généralités
      • 2.2 Utilisation
      • 2.3 Utilisation de regcomp()
      • 2.4 Utilisation de regexec()
    • 3. Exercices
      • 3.1 Exercice 1
      • 3.2 Exercice 2
      • 3.3 Exercice 3
  • hl, une commande de colorisation
    • 1. Description
    • 2. Principe de fonctionnement
    • 3. Description des options
      • 3.1 Usage de la commande
      • 3.2 Options de couleurs
      • 3.3 Option -h
      • 3.4 Option -v
      • 3.5 Option -u
      • 3.6 Option -e
      • 3.7 Option -i
      • 3.8 Option -E
      • 3.9 Option -d
      • 3.10 Option -D
    • 4. Exercices
      • 4.1 Exercice 1
      • 4.2 Exercice 2
      • 4.3 Exercice 3
      • 4.4 Exercice 4
      • 4.5 Exercice 5
      • 4.6 Exercice 6
      • 4.7 Exercice 7
      • 4.8 Exercice 8
      • 4.9 Exercice 9
  • Les expressions régulières en Python
    • 1. Généralités
    • 2. Le module de gestion des expressions régulières
      • 2.1 Utilisation
      • 2.2 Méthode re.compile()
      • 2.3 Méthode re.search()
      • 2.4 Méthode re.match()
      • 2.5 Méthode re.sub()
    • 3. Les expressions régulières
      • 3.1 Utilisation du caractère .
      • 3.2 Utilisation du caractère \
      • 3.3 Utilisation des caractères [ ]
      • 3.4 Utilisation du caractère *
      • 3.5 Utilisation des caractères * ?
      • 3.6 Utilisation du caractère +
      • 3.7 Utilisation des caractères + ?
      • 3.8 Utilisation du caractère ?
      • 3.9 Utilisation des caractères ( )
      • 3.10 Utilisation des caractères ( ? iLmsux)
      • 3.11 Utilisation des caractères ( ? :...)
      • 3.12 Utilisation des caractères ( ? P<name>...)
      • 3.13 Utilisation des caractères ( ? P=name)
      • 3.14 Utilisation des caractères ( ? #...)
      • 3.15 Utilisation des caractères ( ? =...)
      • 3.16 Utilisation des caractères ( ? !...)
      • 3.17 Utilisation des caractères ( ? <=...)
      • 3.18 Utilisation des caractères ( ? <!...)
      • 3.19 Utilisation des caractères { }
      • 3.20 Utilisation du caractère |
      • 3.21 Utilisation du caractère ^
      • 3.22 Utilisation du caractère $
  • Les expressions régulières en Perl
    • 1. Généralités
    • 2. Intégration des expressions régulières au langage
      • 2.1 Généralités
      • 2.2 Avertissement
      • 2.3 Recherche de chaînes
      • 2.4 Substitution de chaînes
    • 3. Les expressions régulières
      • 3.1 Utilisation du caractère .
      • 3.2 Utilisation du caractère \
      • 3.3 Utilisation des caractères [ ]
      • 3.4 Utilisation du caractère *
      • 3.5 Utilisation des caractères * ?
      • 3.6 Utilisation du caractère +
      • 3.7 Utilisation des caractères + ?
      • 3.8 Utilisation du caractère ?
      • 3.9 Utilisation des caractères ??
      • 3.10 Utilisation des caractères ( )
      • 3.11 Utilisation des caractères ( ? imsx-imsx)
      • 3.12 Utilisation des caractères ( ? imsx-imsx:...)
      • 3.13 Utilisation des caractères ( ? :...)
      • 3.14 Utilisation des caractères ( ? #...)
      • 3.15 Utilisation des caractères ( ? =...)
      • 3.16 Utilisation des caractères ( ? !...)
      • 3.17 Utilisation des caractères ( ? <=...)
      • 3.18 Utilisation des caractères ( ? <!...)
      • 3.19 Utilisation des caractères ( ? >...)
      • 3.20 Utilisation des caractères ( ? {...})
      • 3.21 Utilisation des caractères {n}
      • 3.22 Utilisation des caractères {n,}
      • 3.23 Utilisation des caractères {n,p}
      • 3.24 Utilisation des caractères {n,} ?
      • 3.25 Utilisation des caractères {n,p} ?
      • 3.26 Utilisation du caractère |
      • 3.27 Utilisation du caractère ^
      • 3.28 Utilisation du caractère $
    • 4. Les classes de caractères
    • 5. Exemple de programme de recherche de correspondance
    • 6. Exemple de programme de substitution
  • Les expressions régulières en JavaScript
    • 1. Généralités
    • 2. Utilisation des expressions régulières
    • 3. Les expressions régulières
      • 3.1 Utilisation du caractère .
      • 3.2 Utilisation du caractère \
      • 3.3 Utilisation des caractères [ ]
      • 3.4 Utilisation du caractère *
      • 3.5 Utilisation du caractère +
      • 3.6 Utilisation du caractère ?
      • 3.7 Utilisation des caractères ( )
      • 3.8 Utilisation des caractères ( ? :...)
      • 3.9 Utilisation des caractères ( ? =...)
      • 3.10 Utilisation des caractères ( ? !...)
      • 3.11 Utilisation des caractères {n}
      • 3.12 Utilisation des caractères {n,}
      • 3.13 Utilisation des caractères {n,p}
      • 3.14 Utilisation du caractère |
      • 3.15 Utilisation du caractère ^
      • 3.16 Utilisation du caractère $
  • Synthèse des types d’expression
    • 1. Les expressions de sélection
      • 1.1 Quels programmes les utilisent ?
      • 1.2 Les métacaractères
      • 1.3 Les quantificateurs
    • 2. Les expressions régulières basiques
      • 2.1 Quels programmes les utilisent ?
      • 2.2 Les métacaractères
      • 2.3 Les quantificateurs
      • 2.4 Les classes de caractères
    • 3. Les expressions régulières étendues
      • 3.1 Quels programmes les utilisent ?
      • 3.2 Les métacaractères
      • 3.3 Les quantificateurs
      • 3.4 Les classes de caractères
    • 4. Les expressions régulières de find
      • 4.1 Généralités
      • 4.2 les différentes interprétations des expressions régulières
        • 4.2.1 emacs
        • 4.2.2 posix-awk
        • 4.2.3 posix-basic
        • 4.2.4 posix-egrep
        • 4.2.5 posix-extended
  • Les classes de caractères POSIX
    • 1. Généralités
    • 2. Les classes POSIX
      • 2.1 [:alpha:]
      • 2.2 [:lower:]
      • 2.3 [:upper:]
      • 2.4 [:alnum:]
      • 2.5 [:digit:]
      • 2.6 [:xdigit:]
      • 2.7 [:space:]
      • 2.8 [:blank:]
      • 2.9 [:punct:]
      • 2.10 [:print:]
      • 2.11 [:graph:]
      • 2.12 [:cntrl:]
  • Équivalences d'expressions régulières
    • 1. Véritables équivalences d'expressions
    • 2. Fausses équivalences
    • 3. Conseils
  • Outils de validation d'expressions régulières
    • 1. Besoin de mise au point
    • 2. Validation des informations
      • 2.1 Validation des données
      • 2.2 Validation des expressions régulières avant utilisation
    • 3. Méthodes de validation des expressions
      • 3.1 Détermination du type d'expression régulière
      • 3.2 Validation d'une expression de filtrage
      • 3.3 Validation d'une expression régulière basique
      • 3.4 Validation d'une expression régulière étendue
    • 4. Règles de bonnes pratiques
  • Quelques exercices récapitulatifs
    • 1. Introduction
    • 2. shell, sed, awk
      • 2.1 Détermination du jour de la semaine d'une date donnée
    • 3. find, egrep, hl
      • 3.1 Colorisation d'un répertoire de niveau donné
  • Annexes
    • 1. Gestion des caractères français sous Linux
      • 1.1 Installation du paquet d’internationalisation
      • 1.2 Exemple d’installation
      • 1.3 Exemple de configuration
      • 1.4 Choix du jeu de caractères
    • 2. Sources de la commande args
      • 2.1 Fichier args.c
    • 3. Sources de la commande hl
      • 3.1 Fichier cr_cpri.h
      • 3.2 Fichier cr_epri.h
      • 3.3 Fichier cr_gpri.c
      • 3.4 Fichier cr_main.c
      • 3.5 Fichier makefile
    • Index

Auteur

Martial BORNETEn savoir plus

Martial Bornet est ingénieur en informatique depuis près de 30 ans, diplômé de Supinfo. Il a débuté sa carrière dans une start-up pionnière dans le monde du réseau local, en tant que développeur réseau et système. Actuellement consultant en Système, spécialisé sur Unix et ses dérivés, il effectue des missions d'expertise dans des start-up de haut niveau ou chez des grands comptes et exploite très fréquemment les expressions régulières dans le cadre de ses développements.

Caractéristiques

  • Niveau Initié à Confirmé
  • Nombre de pages 465 pages
  • Parution septembre 2015
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-7460-9712-4
    • EAN : 9782746097124
    • Ref. ENI : RIEXRE
  • Niveau Initié à Confirmé
  • Parution septembre 2015
    • HTML
    • ISBN : 978-2-7460-9806-0
    • EAN : 9782746098060
    • Ref. ENI : LNRIEXRE

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (54,3 Ko)