[PERL] associer une clef à plusieurs valeurs

Fermé
Ju - 11 nov. 2010 à 12:16
Bonjour,

Je suis débutant en perl et je cherche à savoir comment je peux associer plusieurs valeurs à une clef dans un tableau associatif i.e je voudrais quelque chose qui puisse me donner cela :

%synonyme = ("directeur"=>"chef",
	     "chef"=>"responsable",
	     "animateur"=>"valeur1","valeur2"
	    );

@correspondance = %synonyme;

while(<>){

      chomp(); 
      @mots_fichier=split(/(\s)/,$_);

      while ($mots=shift(@mots_fichier))
      {
	    for ($i=0;$i<$#correspondance;$i++)
	    {
		  $JD=$correspondance[$i];
		  $JD_synonyme=$correspondance[$i+1];
		  #print "$JD $JD_synonyme";
		  if ($mots eq $JD)
		  {
			s/$mots/$JD_synonyme/g;
			#print "résultat de la substitution : $_\n";
		  }

	    }

      }


Ce code ne fonctionne pas à cause de la double valeur j'en suis conscient !

Mon but est que lorsque je trouve "animateur" dans mon fichier il le remplace par "valeur1" et "valeur2".

Et je ne vois pas comment faire pour avoir les deux !

Merci d'avance.