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

Langage Perl Discussion :

Lecture des properties (couple clé-valeur)


Sujet :

Langage Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2005
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 38
    Par défaut Lecture des properties (couple clé-valeur)
    Bonjour,

    En partant du principe que le caractère de commentaire dans les fichiers properties est '#', je pensais avoir trouvé l'expression régulière pour récupérer la clé et la valeur des properties présentes dans un fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    !/^[ ]*\t*#/    &&    /^(.+)=(.*)$/
    Si la ligne ne commence pas par '#', avec éventuellement des espaces et/ou des tabulations avant le '#', et si la ligne comporte un '=' avec du "non-vide" avant le '=', alors je récupère ce qui est à gauche du '=' dans une variable $CLE et ce qui est à droite dans une variable $VALEUR

    Ca fonctionne bien, sauf si la ligne contient un caractère '=' dans la partie valeur, du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    password = pM6qw6np47qwC2PQ=
    Dans ce cas $CLE contient la totalité de la ligne excepté le dernier '=', et $VALEUR est vide


    Il faudrait dire que le séparateur est le premier caractère '=' trouvé sur la ligne, mais je ne sais pas trop comment faire...


    Rq : mon programme est en Perl

  2. #2
    Membre Expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Par défaut
    Hello,

    Les expressions régulières sont greedy par défaut : le point quantifié essaie de matcher le plus possible.
    Dans ton cas, c'est le .+ qui bouffe tout.

    Ceci serait mieux, au choix :

    ou

    ET je te ramène chez les mongueurs...

  3. #3
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Par défaut
    Un autre détail : \s étant équivalent à [ \t], le motif de recherche d'une ligne de commentaire peut se simplifier ainsi :
    D'ailleurs, dans ton cas, si une ligne commence par une tabulation et est suivi d'un espace et d'un #, tu ne détecteras pas une ligne de commentaire.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2005
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 38
    Par défaut
    Vous avez parfaitement répondu à ma question, merci

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

Discussions similaires

  1. useBean : lecture des property
    Par pamoq dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 18/10/2007, 12h00
  2. Réponses: 12
    Dernier message: 02/03/2007, 12h33
  3. Prob de lecture des valeurs de l'objet map
    Par micanti dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 12/07/2006, 21h38
  4. Prob de lecture des valeurs de l'objet map
    Par micanti dans le forum Struts 1
    Réponses: 12
    Dernier message: 12/07/2006, 18h12
  5. [Collection] Regrouper des couples clé/valeur
    Par webspeak dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 22/05/2006, 15h12

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