paragraphes.pl

#!/usr/bin/perl
use locale; #caracteres accentues
#On lance comme cela: perl paragraphes.pl
#On obtient: p.fichier.ext
print "Bienvenu(e) au programme qui ne permet que de \n mettre des paragraphes dans les sauts de ligne \n et des retours a la ligne en fin de ligne \n dans n'importe quel type de fichier \n sans toucher aux accents ni aux metacaracteres \n (chevrons ouvrant, fermant ou guillemets)\n";
print "Nom du fichier de travail, de preference au format UNIX: \n";
my $file=<STDIN>;
chomp($file);
open(FILEIN, $file);
open(FILEOUT, ">p.$file");
my $DUMPFULL="";
while(my $recup=<FILEIN>) {
#1. Les paragraphes et les line breaks
$recup=~s/(\s)*\n/\n/g; #supprime les espaces avant le retour à la ligne
$recup=~s/^\n/<p>\n/g; #met des paragraphes dans tous les sauts de ligne
if ($recup=~/[^<p>]\n/g) {
$recup=~s/\n/<\/br>\n/g
};# met des br en fin de ligne lorsque la balise <p> n'est pas là
#2. Memorisation dans DUMPFULL
$DUMPFULL.=$recup;
}
#3. Remplacement des entites
print FILEOUT $DUMPFULL;
print "\nLe fichier bien structuré se nomme p.$file";
#----------------------------------------------
close(FILEIN);
close(FILEOUT);