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

Python Discussion :

expressions regulieres avec glob


Sujet :

Python

  1. #1
    Membre actif
    Profil pro
    ingénieur
    Inscrit en
    Novembre 2011
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur

    Informations forums :
    Inscription : Novembre 2011
    Messages : 165
    Points : 259
    Points
    259
    Par défaut expressions regulieres avec glob
    Bonjour à tous,

    J'ai un fichier nommé: que j'aimerais matcher avec une expression régulière.

    J'ai tenté ceci avec glob:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    glob.glob('./bla_[0-9]*$')
    mais sans succès pourtant je ne vois pas ce qui cloche dans mon expression régulière.

    Plus généralement, j'aimerais matcher les fichiers du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <chaine avec des [a-z] et des _ ><ici 8 chiffres>_<ici 6 chiffres>
    Des idées svp?

    edit: apparement il n'aime pas le $ que j'ai mis à la fin car sans il fonctionne. Problème: j'ai besoin de lui préciser que les chiffres sont à la fin du nom de fichier...

  2. #2
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 461
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 461
    Points : 9 248
    Points
    9 248
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    glob n'utilise pas les expressions régulières, mais les jokers (Unix shell-style wildcards) du module fnmatch.

    Pour trouver les fichiers du type "bla_99999999_999999":

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    import glob
     
    liste = glob.glob('bla_[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]_[0-9][0-9][0-9][0-9][0-9][0-9]')
    Ça parait rustique, comme ça, mais ça marche très bien.

    Il faut bien sûr compléter s'il y a une extension au nom du fichier ('.txt', etc...)

    Complément dans la doc des modules glob et fnmatch.
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

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

Discussions similaires

  1. expression reguliere avec regex
    Par voyageur dans le forum C#
    Réponses: 4
    Dernier message: 25/03/2008, 15h52
  2. [ORACLE] Expression reguliere avec like
    Par tchoukapi dans le forum Langage SQL
    Réponses: 7
    Dernier message: 14/11/2007, 16h41
  3. [Bash] Expression reguliere avec expr match
    Par cerede2000 dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 19/10/2007, 14h41
  4. [c#][asp.net]expression reguliere avec
    Par zitoun dans le forum ASP.NET
    Réponses: 2
    Dernier message: 23/04/2007, 10h15
  5. [langage] Ptit Probleme expression réguliere avec perl
    Par Shoot Again dans le forum Langage
    Réponses: 3
    Dernier message: 02/12/2004, 12h44

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