C'est la base de la base des hash perl, ça.
Ca doit ressembler à ceci (pas le temps de tester)
%myhash;
foreach (@mylist) {
$myhash{$_}++;
}
(ou $myhash{$_}++ foreach (@mylist); si tu préfères tout sur une ligne.)
Tu crées un hash, et pour chaque valeur de ta liste, tu incrémentes l'élément du hash de clé cette valeur.
A la fin, le hash a pour clés les mots distincts de ta liste, et pour valeur associée à une clé le nombre de fois que le mot (ie la clé) est dans la liste.
EDIT:
J'ai trouvé 2mn pour tester
Code :
#!/usr/bin/perl use strict; use warnings; my @list = qw(toto tutu tata tutu titi toto toto toto tata ); my %hash; foreach (@list) { $hash{$_}++; } }
|
C:\PerlDev>perl answer1.pl
tata 2
titi 1
toto 4
tutu 2 |
A+,
Message édité par gilou le 16-09-2016 à 12:05:48
---------------
There's more than what can be linked! -- Iyashikei Anime Forever! -- AngularJS c'est un framework d'engulé! --