reseau:regexp:accueil
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| reseau:regexp:accueil [2021/11/24 22:27] – [Liste de quelques méta-caractères utilisés et leur fonction :] techer.charles_educ-valadon-limoges.fr | reseau:regexp:accueil [2021/11/30 15:24] (Version actuelle) – [grep] techer.charles_educ-valadon-limoges.fr | ||
|---|---|---|---|
| Ligne 4: | Ligne 4: | ||
| Une expression régulière sert à identifier une chaîne de caractères répondant à un ou plusieurs critères comme par exemple une chaîne de caractères ne contenant des lettres. | Une expression régulière sert à identifier une chaîne de caractères répondant à un ou plusieurs critères comme par exemple une chaîne de caractères ne contenant des lettres. | ||
| - | Les expressions régulières permettent de simplifier les recherches | + | Les expressions régulières permettent |
| + | * de rechercher des " | ||
| + | * de réaliser, en une seule commande, un ensemble de tâches. | ||
| + | * appliquer des transformations dans du texte ; | ||
| + | * valider la conformité d’une donnée. | ||
| ===== Définir des expressions régulières ===== | ===== Définir des expressions régulières ===== | ||
| Ligne 11: | Ligne 16: | ||
| Il existe deux standards principaux en matière d' | Il existe deux standards principaux en matière d' | ||
| - | ==== Liste de quelques méta-caractères utilisés et leur fonction : ==== | + | <WRAP center round todo> |
| + | Un site pour apprendre à utiliser les expressions régulières : | ||
| + | * https:// | ||
| + | * en testant les expressions régulières avec [[https:// | ||
| + | |||
| + | Dans ce tutoriel vous utiliserez également : | ||
| + | * grep | ||
| + | * sed | ||
| + | * less | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== les commandes linux utiles ===== | ||
| + | * **cd** : aller dans un dossier (absolu « / | ||
| + | * **ls** : afficher les fichiers du dossier courant, | ||
| + | * **pwd** : afifcher le chemin du dossier courant, | ||
| + | * **mkdir** : créer un dossier, | ||
| + | * **rm** : effacer un fichier (ou un dossier : « rm -r »), | ||
| + | * **cat** : envoie le contenu d'un (des) fichier(s) vers le flux de sortie standard, | ||
| + | * **less** : visualiser un flux (fèches pour monter / descendre, « q » pour quitter), | ||
| + | * **grep** : afficher les lignes du fux qui correspondent à une expression régulière, | ||
| + | * **sort** : trie les lignes du flux par ordre lexicographique, | ||
| + | * **uniq** : omet les lignes répétées dans le fux, | ||
| + | * **wc** : compte le nombre de lignes / mots / caractères dans le flux. | ||
| + | ===== Le pipe ===== | ||
| + | Le pipe **|** permet de changer la destination d'un flux de données | ||
| + | ==== Par exemple : ==== | ||
| + | * Envoyer le contenu d'un fichier vers la sortie standard (terminal) : | ||
| + | <code shell> | ||
| + | cat fichier.txt | ||
| + | </ | ||
| + | * Envoyer le contenu d'un fichier vers la visualisation paginée : | ||
| + | <code shell> | ||
| + | cat fichier.txt | less | ||
| + | </ | ||
| + | * Envoyer le contenu d'un fichier vers **grep** pour sélectionne les lignes contenant le mot **limoges** et les le | ||
| + | </ | ||
| + | visualiser page par page : | ||
| + | <code shell> | ||
| + | cat fichier.txt | grep limoges | less | ||
| + | </ | ||
| + | * Envoyer le contenu d'un fichier vers **grep**, qui sélectionne les lignes contenant le mot **limoges** puis enregistre les lignes dans un autre fichier : | ||
| + | <code shell> | ||
| + | cat fichier.txt | grep limoges > fichierlimoges.txt | ||
| + | </ | ||
| + | === Conseils === | ||
| + | * tester des commandes dans le terminal, | ||
| + | * lorsque la sortie est volumineuse, | ||
| + | * pour enregistrer la sortie dans un fichier, ajoutez ** > fchier.txt **, | ||
| + | * pour voir (ou compter) des entrées distinctes, ajoutez **| sort | uniq -c**. | ||
| + | ===== grep ==== | ||
| + | **grep** signifie **Global Regular Expression Print** et est un outil en ligne de commande Linux / Unix utilisé pour rechercher une chaîne de caractères dans un fichier spécifié. | ||
| + | <WRAP center round info> | ||
| + | grep vous permet de rechercher et d' | ||
| + | </ | ||
| + | |||
| + | |||
| + | Le modèle de recherche de texte est appelé une **expression régulière (regex)**. Lorsqu' | ||
| + | |||
| + | **grep** peut s' | ||
| + | |||
| + | Les commandes suivantes alors équivalentes : | ||
| + | <code shell> | ||
| + | grep motif nomfichier | ||
| + | </ | ||
| + | ou | ||
| + | <code shell> | ||
| + | cat nomfichier | grep motif | ||
| + | </ | ||
| + | |||
| + | Pour rendre **grep** insensible à la casse, utilisez l' | ||
| + | |||
| + | Options utiles | ||
| + | ^ option | ||
| + | |-i| insensible à la casse| | ||
| + | |-w| rechercher dans tous le fichiers| | ||
| + | |-n| afficher les numéros de ligne| | ||
| + | |-v| inverser la recherche pour exclure| | ||
| + | |-mx| Limiter le nombre de sortie à x ligne| | ||
| + | |-e chaine1 -e chaine2| Rechercher plusieurs chaînes| | ||
| + | |-Ee " | ||
| + | |-c| compter le nombre de ligne| | ||
| + | |" | ||
| + | |" | ||
| + | |||
| + | Lien : | ||
| + | * https:// | ||
| + | * https:// | ||
| + | <WRAP center round todo> | ||
| + | Découvrir d' | ||
| + | * https:// | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Liste de quelques méta-caractères utilisés et leur fonction : ===== | ||
| ^Méta-caractère^Fonction^ | ^Méta-caractère^Fonction^ | ||
| |\d|Tous les chiffres| | |\d|Tous les chiffres| | ||
| Ligne 21: | Ligne 120: | ||
| |[0-9]|Les chiffres de 0 à 9| | |[0-9]|Les chiffres de 0 à 9| | ||
| |[abc]|a, b ou c| | |[abc]|a, b ou c| | ||
| - | |[^abc]|Ni a ni b ni c| | + | |[%%^%%abc]|Ni a ni b ni c| |
| |{n}|Répéter n fois| | |{n}|Répéter n fois| | ||
| |{n, | |{n, | ||
| Ligne 34: | Ligne 133: | ||
| |(…)|Sélection d’un groupe| | |(…)|Sélection d’un groupe| | ||
| |%%|%%|Permettant de faire ou entre 2 sous-motifs| | |%%|%%|Permettant de faire ou entre 2 sous-motifs| | ||
| + | |||
| + | ==== Quelques exemples d’expressions régulières et leur signification ==== | ||
| + | ^Expression^Signification^ | ||
| + | |test|Recherche de mots contenant test (tester, attester…)| | ||
| + | |\d{3}-\d{6}|Chaine de caractères de la forme 3chiffres-6chiffres comme 123-654321| | ||
| + | |^a|Toutes les lignes commençant par la lettre a| | ||
| + | |\bf\w*\b|Tous les mots commençant par la lettre f| | ||
| + | |\d+|Tous les mots ne contenant que des chiffres (au moins un chiffre)| | ||
| + | |\w+|Tous les mots ne contenant que des lettres (au moins une lettre)| | ||
| + | |^(fichier.+)\.pdf$|Va afficher toutes les lignes commençant par fichier avec l’extension .pdf mais ne va afficher que la partie avant l’extension (fichier1.pdf affichera fichier1)| | ||
| + | |ABC%%|%%XYZ|Tous les mots contenant ABC ou XYZ| | ||
| + | |\btest\b|Tous les mots « test » exactement (on ne cherche que le mot test)| | ||
| + | |(\d+)x(\d+)|Pour le texte 1920x800 va afficher deux groupes 1920 et 800| | ||
reseau/regexp/accueil.1637789244.txt.gz · Dernière modification : 2021/11/24 22:27 de techer.charles_educ-valadon-limoges.fr
