Bonjour,
j'utilise le script perl suivant :

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";
}
ce script compte le nombre de mots dans un fichier texte.
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 ...