Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1589 connectés 

  FORUM HardWare.fr
  Programmation
  Perl

  Somme de mots en répétition

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Somme de mots en répétition

n°2288070
debut25
Posté le 15-09-2016 à 21:56:54  profilanswer
 

Bonsoir
J ai une liste de mots en ordre alphabétique, où il y a de mots qui sont répétés
Et je dois afficher une nouvelle liste où les mots répétés sont accompagnés du nombre de fois de répétition, par ex dans la première liste il y a  :  
 
Jean
Jean
Johan
John
John
John
 
Du coup il faut que la nouvelle liste soit :  
 
Jean 2
Johan
John 3
 
Comment je peux compter les répétitions ?  
 
Merci en avance !  

mood
Publicité
Posté le 15-09-2016 à 21:56:54  profilanswer
 

n°2288094
gilou
Modérateur
Modzilla
Posté le 16-09-2016 à 11:50:20  profilanswer
 

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 :
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4.  
  5. my @list = qw(toto tutu tata tutu titi toto toto toto tata);
  6. my %hash;
  7. foreach (@list) {
  8.     $hash{$_}++;
  9. }
  10. foreach (sort(keys %hash)) {
  11.     print "$_ $hash{$_}\n";
  12. }


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!    --    In umbra igitur pugnabimus. --
n°2288100
debut25
Posté le 16-09-2016 à 13:17:56  profilanswer
 

merci beaucoup!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Perl

  Somme de mots en répétition

 

Sujets relatifs
[EXCEL] Problème avec la fonction SOMME.SI.ENSSous total avec 2 filtre.
probleme dans le resultats d'un script qui cherche de motssomme de plusieurs cellules selon si vides ou pas
Enlever les mots constituant la redirectioncompter nombre de ligne entre deux mots
remplacer des mots par des liens (XML to HTML via XSLT)[RegExp] Expression régulière : recherche sur 2 mots
Créer listes par longueur de motsverouiller un dossier par un mots de passe + cryptage
Plus de sujets relatifs à : Somme de mots en répétition


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR