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

Linux Discussion :

bash : expression régulière


Sujet :

Linux

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 39
    Par défaut bash : expression régulière
    Bonjour,

    Je cherche à vérifier que mes fichiers de musique sont tous de la forme :
    01-montitre.mp3, par exemple.

    Je n'arrive pas à contruire mon expression régulière.
    - Est-ce bien la commande expr que je dois utiliser ?
    - Quelle serait l'expression régulière ?

    if expr '$msg' : '[a-z]'
    then
    echo "[OK] $msg"
    else
    echo "[KO] $msg"
    fi


    Merci d'avance

  2. #2
    Membre émérite
    Avatar de D[r]eadLock
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    504
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 504
    Par défaut
    Citation Envoyé par man expr
    STRING : REGEXP
    anchored pattern match of REGEXP in STRING
    Donc à priori c'est dans l'autre sens.

    Et quant à la regexp, je dirais un truc du genre
    Ça passe avec 01-montitre.mp3

    me@cyann ~/doc $ expr 01a-montitre.mp3 : "[0-9]\+-.*\.mp3"
    0
    me@cyann ~ $ expr 0a1-montitre.mp3 : "[0-9]\+-.*\.mp3"
    0
    me@cyann ~ $ expr a01-montitre.mp3 : "[0-9]\+-.*\.mp3"
    0
    me@cyann ~ $ expr 01-montitre.mp4 : "[0-9]\+-.*\.mp3"
    0
    me@cyann ~ $ expr 01amontitre.mp3 : "[0-9]\+-.*\.mp3"
    0
    me@cyann ~ $ expr 01-montitre.mp3 : "[0-9]\+-.*\.mp3"
    15

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 39
    Par défaut
    Nickel, ça marche. Merci.
    A noter, j'avais simple quoté la chaine de caractère auparavant, alors qu'il faut des doubles !

    if expr "$msg" : "[0-9]\+-.*\.mp3"
    then
    echo "[OK] $msg"
    else
    echo "[KO] $msg"
    fi

  4. #4
    Membre averti
    Inscrit en
    Octobre 2008
    Messages
    58
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 58
    Par défaut
    Bonjour,

    je suis bloqué sur un point débile depuis des heures.

    je veux créer un path (chemin d'un dossier avec les expressions régulières).
    pour être précis, voici ce que je fais.

    1.J'ai un fichier texte dans leque je stoque des noms des autres fichiers.
    2.je parcours ce fichier ligne par ligne et je récupère le nom de fichier.
    => ça est bon.
    3. je dois enlever l'extension de fichier
    => c'est bon
    4. je dois chercher ce fichier s'il existe ou nom dans mon dossier
    exemple.
    toto.txt
    => je récupère toto

    => je dois chercher s'il existe toto ou toto.txt dans mon dossier C
    Donc je dois utiliser une expression régulière pour vérifier les deux cas mais je n'arrive pas à construire la bonne expression.

    merci

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

Discussions similaires

  1. Expression régulière en bash
    Par becks dans le forum Administration système
    Réponses: 3
    Dernier message: 14/12/2009, 12h56
  2. Réponses: 2
    Dernier message: 13/05/2009, 11h06
  3. [expression régulière] mon cerveau fait des noeuds..
    Par nawac dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 27/05/2003, 10h06
  4. Expressions réguliéres
    Par Tooms dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2002, 18h42
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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