Bonjour,
j'utilise le script perl suivant :
ce script compte le nombre de mots dans un fichier texte.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 if ($#ARGV < 0) { # si on n'a pas passé d'argument au programme # on affiche un message die("Usage : $0 nom_fichier"); } # ouverture du fichier ou affichage d'un message (si erreur) open(FICH, $ARGV[0]) or die("Le fichier $ARGV[0] n'est pas accessible"); # lecture du fichier ligne par ligne while ($ligne = <FICH>) { chomp($ligne); # on se débarrasse des retours à la ligne # split(' ', $ligne) retourne un tableau avec les mots de la ligne # foreach parcours ce tableau foreach $mot (split(' ', $ligne)) { $compteur{$mot}++; # le tableau associatif %compteur va stocker les mots et leur nombre d'occurrence } } # ne pas oublier de fermer le fichier close(FICH); # affichage du tableau associatif while (($mot, $nb) = each(%compteur)) { print "$mot apparait $nb fois\n"; }
Je cherche à trier les mots par ordre alphabétique en sortie.
ex :
le apparait 2 fois
moineau apparait 3 fois
taupe apparait 1 fois
etc...
Si quelqu'un a une idée ...
Partager