Stations de travail en ligne OnWorks Linux et Windows

Logo

Hébergement gratuit en ligne pour les postes de travail

<Précédent | Table des matières | Suivant>

{ } - Faire correspondre un élément un certain nombre de fois

Le { et les } les métacaractères sont utilisés pour exprimer les nombres minimum et maximum de correspondances requises. Ils peuvent être spécifiés de quatre manières possibles :


Tableau 19-3 : Spécification du nombre de correspondances


Spécificateur Signification

Spécificateur Signification

{n} Faire correspondre l'élément précédent s'il se produit exactement n fois.


image

{n,m} Faire correspondre l'élément précédent s'il apparaît au moins n fois, mais pas plus de m fois.


image

{n,} Faire correspondre l'élément précédent s'il se produit n ou plusieurs fois.


image

{,m} Faire correspondre l'élément précédent s'il n'apparaît pas plus de m fois.


image


Pour revenir à notre exemple précédent avec les numéros de téléphone, nous pouvons utiliser cette méthode de spécification des répétitions pour simplifier notre expression régulière d'origine à partir de :


^\(?[0-9][0-9][0-9]\)? [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$

à:

^\(?[0-9]{3}\)? [0-9]{3}-[0-9]{4}$

Essayons:



[moi@linuxbox ~]$ écho "(555) 123-4567" | grep -E '^\(?[0-9]{3}\) ? [0-9]{3}-[0-9]{4}$'

(555) 123-4567

[moi@linuxbox ~]$ écho "555 123-4567" | grep -E '^\(?[0-9]{3}\) ? [0-9]

{3}-[0-9]{4}$'

555 123-4567

[moi@linuxbox ~]$ écho "5555 123-4567" | grep -E '^\(?[0-9]{3}\) ? [0-9

]{3}-[0-9]{4}$'

[moi@linuxbox ~]$

[moi@linuxbox ~]$ écho "(555) 123-4567" | grep -E '^\(?[0-9]{3}\) ? [0-9]{3}-[0-9]{4}$'

(555) 123-4567

[moi@linuxbox ~]$ écho "555 123-4567" | grep -E '^\(?[0-9]{3}\) ? [0-9]

{3}-[0-9]{4}$'

555 123-4567

[moi@linuxbox ~]$ écho "5555 123-4567" | grep -E '^\(?[0-9]{3}\) ? [0-9

]{3}-[0-9]{4}$'

[moi@linuxbox ~]$


Comme nous pouvons le voir, notre expression révisée peut valider avec succès des nombres avec et sans parenthèses, tout en rejetant les nombres qui ne sont pas correctement formatés.


Meilleur système d'exploitation Cloud Computing chez OnWorks :