1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
| #!/usr/bin/perl
$l = "./";
@dics = open_dir($l);
foreach my $dics ( @dics )
{
open (FILE, "$dics") || die "impossible to open $dics $!";
$ligne_dico = <FILE>;
close (FILE);
$ligne_dico = quotemeta($ligne_dico);
$ligne_dico =~ s/\S+/ /;
$ligne_dico =~ s/\s\w{1,2}\s/ /gi;
$ligne_dico =~ s/\{\}\[\]\(\)\^\$\.\|\*\+\?\\/ /g;
$ligne_dico =~ s/¨|!|:|,|;|"|~|-|#|'|`|_|\\|@|°|=|£|¤|%|µ|§/ /g;
$ligne_dico =~ s/ /\n/g; # Remplace les espaces pas des sauts de lignes
&vider($dics);
sleep(1); # on patiente le temps de vider le dico en cours
@mots_dico = split(/\n/, $ligne_dico);
@mots_dico = grep { defined } @mots_dico; # ont supprimé les espace vide
open FILE, "> $dics" or die "$dics : $!\n";
print FILE "@mots_dico\n";
close FILE;
}
sub vider
{
my $vi = shift;
my $vo;
open FILE, "> $vi" or die "$vi : $!\n";
print FILE "$vo";
close FILE
}
sub open_dir
{
my $dir_op = shift;
my $repertoire = "$dir_op";
my(%mtime);
my(@ficpl);
opendir (DIR, "$repertoire") || die ("can't open $repertoire");
@ficpl = grep {
/\.(txt)$/i && ($mtime{$_} = (stat ("$repertoire\\$_"))[9]);
}
readdir (DIR);
closedir DIR;
return @ficpl;
} |
Partager