IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

expressions régulières dans switch (case)


Sujet :

Shell et commandes GNU

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Par défaut expressions régulières dans switch (case)
    Bonjour,

    Est-ce que quelque sait comment définir le nombre d'élément {n,m} ?

    l'expression pour dire que si l'argument est un nombre de 1 à 3 chiffres ne fonctionne pas. Pareil pour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    case "$1" in
        [[:digit:]]{1,3} )
            echo "...";;
        [[:lower:]]{4} )
            echo "...";;
        * )
            echo "..." 
            exit 1;;
    esac
    mercie d'avance

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 44
    Par défaut
    Citation Envoyé par sergevich Voir le message
    pour dire que si l'argument est un nombre de 1 à 3 chiffres ne fonctionne pas. Pareil pour
    La structure 'case' ne permet pas de le faire.
    Pour cela il faut utiliser le comparateur =~
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $ foo=123
    $ [[ $foo =~ [[:digit:]]{3} ]] && echo yes || echo no
    yes
    $ foo=1A2
    $ [[ $foo =~ [[:digit:]]{3} ]] && echo yes || echo no
    no
    edit : mais le mieux est tout de même d'utiliser grep pour "manipuler" les [E]RE

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Par défaut
    Merci pour votre réponse.

    Bonne soirée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 14/12/2007, 23h26
  2. Utilisation d'expressions régulières dans GTK
    Par bit_o dans le forum GTK+ avec C & C++
    Réponses: 4
    Dernier message: 11/04/2007, 19h24
  3. [RegEx] Utiliser une expression régulière dans une requête
    Par Tobleron dans le forum Langage
    Réponses: 2
    Dernier message: 18/02/2007, 19h00
  4. Réponses: 5
    Dernier message: 30/10/2006, 13h59
  5. Réponses: 1
    Dernier message: 03/02/2006, 12h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo