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 :

Remplacement des espaces dans les valeur d'un tableau


Sujet :

Langage Perl

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 197
    Points : 78
    Points
    78
    Par défaut Remplacement des espaces dans les valeur d'un tableau
    Bonjour à tous,
    ma question est résumé dans le titre de ce post. J'ai un tableau d'adresse mac récupéré par snmp et je souhaite le formater en remplacant lesespaces par des points.

    Ce que j ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Table MAC HEX  
    [00 00 0C 07 AC 0D
     00 02 55 2B 57 75
     00 02 A5 54 3A 91
     00 02 A5 B8 3E CB]
    Ce que je voudrais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Table MAC HEX  
    [00:00:0C:07:AC:0D
     00:02:55:2B:57:75
     00:02:A5:54:3A:91
     00:02:A5:B8:3E:CB]

    Merci d avance Jules

  2. #2
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794

  3. #3
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Je crois que map est ton ami ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @t = map { s/ /:/g } @t;
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 197
    Points : 78
    Points
    78
    Par défaut
    Merci du coup de main malheureusement ca ne fais ce que je veux et en plus j ai du mal a comprendre le resultat !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @Adresse_MAC_Du_Vlan_Courant= map (s/\s/:/g,@Adresse_MAC_Du_Vlan_Courant);
    Resultat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MAC HEX FORMATE  [5 5 5 5 5]
    J'ai l impression que le chiffer 5 correspond au nombre "d espace" trouve par element du tableau !!!

    La ja vouerai que je vois pas trop!!
    Jules

  5. #5
    Mr6
    Mr6 est déconnecté
    Membre éclairé

    Homme Profil pro
    Inscrit en
    Septembre 2004
    Messages
    607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2004
    Messages : 607
    Points : 794
    Points
    794
    Par défaut
    attention à la syntaxe ! regarde bien l'exemple de 2Eurocents

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 197
    Points : 78
    Points
    78
    Par défaut
    Ben en faite j avais essayer sa version mais

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    @Adresse_MAC_Du_Vlan_Courant = map { s/ /:/g }@Adresse_MAC_Du_Vlan_Courant;
    Mais j obitiens la meme reponse qu avant !!!

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 197
    Points : 78
    Points
    78
    Par défaut
    Et en passant par cette methode quelq un a une idee ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @Adresse_MAC_Du_Vlan_Courant_formate = map { split(/ /g,@Adresse_MAC_Du_Vlan_Courant_formate) and join(":", @Adresse_MAC_Du_Vlan_Courant_formate } @Adresse_MAC_Du_Vlan_Courant
    ;

    Mais bon je voudrai bien savoir comment passer en argument de split et join le tableau qui fait tampon de map !!!!
    Car dans ce cas la ca ne fonctionne pas!!!!
    Merci d avance Jules

  8. #8
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Citation Envoyé par 2Eurocents
    Je crois que map est ton ami ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @t = map { s/ /:/g } @t;
    Sauf que je me suis gourré

    En faisant ainsi, on range dans @t le nombre de substitutions faites ...

    Il ne faut pas faire l'affectation.

    Ceci suffit :
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  9. #9
    Expert éminent
    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
    Points : 8 586
    Points
    8 586
    Par défaut
    Qu'y a-t-il exactement dans ton tableau ?
    Par ailleurs la syntaxe de map proposé est incorrecte...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    map { s/ /:/g } @t;
    sera déjà beaucoup mieux (la réponse est dans @t). Mais comme je ne suis pas sûr de comprendre ce qu'il y a dans ton tableau...

    [EDIT] Grillé par 2Eurocents !

    --
    Jedaï

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 197
    Points : 78
    Points
    78
    Par défaut
    MERCI BEAUCOUP,
    effectivement ca fonctionne tres bien encore merci.

    Voila ce que je voulais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ##Table MAC HEX  [00 00 0C 07 AC C8 00 0B FD FB 4F 36 00 0F 34 12 AF 7F 00 80 9F 03 64 A3 00 80 9F 56 39 65]##
    #MAC HEX FORMATE  [00:00:0C:07:AC:C8 00:0B:FD:FB:4F:36 00:0F:34:12:AF:7F 00:80:9F:03:64:A3 00:80:9F:56:39:65]##
    Mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    map { s/ /:/g } @Adresse_MAC_Du_Vlan_Courant;
    Par contre deux questions!!!
    Existe t il en endroit sur le forum ou site ou l on peut deposer ses programmes en libres service ?

    Pourquoi je ne recois plus les mails de reponse a une question que j ai posé comme avant d avoir changer l interface de ce forum.

    Jedai je n oublerai pas de mettre resolu apres !!!!

  11. #11
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 498 771
    Points
    498 771
    Par défaut
    Citation Envoyé par calimero642
    Existe t il en endroit sur le forum ou site ou l on peut deposer ses programmes en libres service ?
    Snippets 1 2 )
    Pour les mails, faut selectionner le type de notification dans suivi de la discussion (bas de page quand tu envoie ecris un message

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

Discussions similaires

  1. Rajouter des espace dans les numéros de téléphones
    Par zooffy dans le forum Développement
    Réponses: 10
    Dernier message: 29/09/2008, 15h05
  2. Faut-il utiliser des underscores ou des espaces dans les noms des fichiers ?
    Par Invité dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 07/05/2008, 19h23
  3. support des espaces dans les noms de fichiers
    Par menuge dans le forum Langage
    Réponses: 9
    Dernier message: 25/10/2006, 09h02
  4. suppression des espaces dans les noms de fichiers
    Par menuge dans le forum Général Python
    Réponses: 8
    Dernier message: 22/10/2006, 12h01
  5. remplacer des espaces dans un champ par des zero
    Par yeep dans le forum Access
    Réponses: 4
    Dernier message: 08/10/2004, 09h41

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