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 :

[langage] Problème de substitution


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
    Juin 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2003
    Messages : 15
    Par défaut [langage] Problème de substitution
    Hello

    J'ai la chaine de caractère suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $_ = "%user%,%password%,%time%";
    J'aimerais remplacer chacun des mots clés compris entre les % par une autre.

    ex, la chaine de sortie doit être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ = "toto,toto,toto";
    j'ai essayé la substitution suivante :
    Malheureusement $1 (le contenu de (.*)) contient ceci :
    user%,%password%,%time
    c'est à dire, le contenu entre le tout premier % et le tout dernier %

    Merci

  2. #2
    Membre émérite
    Avatar de nyal
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    622
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 622
    Par défaut
    Bnjour,

    Voici comment faire :
    Simplement tu n'auras pas toutes les chaines dans les variables $1, $2.
    POur cela, il faudrait changer le systeme. utiliser un split par exemple.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2003
    Messages : 15
    Par défaut
    Merci beaucoup..

    A la place des $1, $2, $3, on obtient quoi ?
    A chaque fois $1 apparemment ?

    Enfin, ca va faire l'affaire, merci encore..

  4. #4
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Si tu veux avoir les trois mots qui seront remplacés, tu as deux possibilités :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $_ = "%user%,%password%,%time%"; 
     
    my @rec = ();
    while( s/\G[^%]*%(.*?)%/toto/ ){
        push @rec, $1;
    }
    ou :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $_ = "%user%,%password%,%time%"; 
     
    my @rec = m/%(.*?)%/g;
    s/%(.*?)%/toto/g;
    TIMTOWDI

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2003
    Messages : 15
    Par défaut
    merci..

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

Discussions similaires

  1. langage pour supervision à base de rs 232
    Par alertgen dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 23/02/2009, 22h08
  2. [langage] [newby] substitute
    Par frouge dans le forum Langage
    Réponses: 2
    Dernier message: 23/03/2005, 12h31
  3. [langage] Substitution précise dans une chaine
    Par ATPase dans le forum Langage
    Réponses: 4
    Dernier message: 02/04/2004, 14h57
  4. [langage] substitution de caractère
    Par martijan dans le forum Langage
    Réponses: 3
    Dernier message: 27/06/2003, 07h47
  5. [langage] substitution chaine
    Par sati dans le forum Langage
    Réponses: 4
    Dernier message: 11/12/2002, 10h01

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