PERL : grep sur les clefs d'un hash

Résolu
sbouli Messages postés 208 Statut Membre -  
sbouli Messages postés 208 Statut Membre -
Bonjour,

Je souhaiterais obtenir une liste (ou tableau) des clefs d'un hash contenant une chaine.

Ex :

Le hash contient :

clef_numero_1 --> 20
clef_numero_2 --> 30
clef_toto_4 -->40
clef_toto_60 -->60
clef_numero_3 --> 100

et je voudrais que @lesbonnesclef contienne toutes les clefs contenant toto :

@lesbonnesclef = (clef_toto_4, clef_toto_60);

je pensais faire un truc du genre :
my @lesbonnesclef = grep ($_ eq "toto", keys(%hash));

mais ça ne semble pas fonctionner ...

Merci d'avance.

Stéphane

1 réponse

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    essaie
    my @lesbonnesclef = grep { /^toto$/ }  keys %hash; 
    0
    1. sbouli Messages postés 208 Statut Membre 2
       
      presque ...

      my @lesbonnesclef = grep { /^toto/ } keys %hash;

      et c'est nickel ;)

      Je touche au but, suis en congé la fin de semaine, je te ferais un mail et un post sur le fils antérieurs la semaine prochaine !!

      Merci encore.

      Stéphane
      0