scratch/recupen.pl
2010-02-17 13:27:01 +01:00

34 lines
803 B
Perl
Executable file

#!/usr/bin/perl
BEGIN{
$/="";
}
sub replaceminim {
my $langue = $_[0] ;
my $keep = $_[1] ;
# protection des X et Y pour qu'ils disparaissent
s/X/_wasx_/g;
s/Y/_wasy_/g;
# remplacement de la chaine en un seul caractère
s/$langue/X/g; # begin
s/::/Y/g; # end
# A partir de maintenant tous les X sont les begin
# tous les Y sont les ends
# on veut récupérer ce qu'il y a à l'intérieur
if ($keep) {
s/X(([^XY]|\n)*?)Y/$1/gm; # suppression begin..end
} else {
s/X([^XY]|\n)*?Y//gm; # suppression begin..end
}
# recuperation des X, Y, et begin et end non traites
s/X/$langue/g;
s/Y/::/g;
s/_wasx_/X/g;
s/_wasy_/Y/g;
}
replaceminim( "en:", 1);
replaceminim( "fr:", 0);