Bonjour,
J'aimerai pouvoir supprimer une zone de texte présente entre deux balises ainsi que ces deux balises, exemple :
J'arrive très bien à effectuer cette action via la ligne de commande suivante ://BEGIN PART1
Super, hier j'ai mangé une pomme.
Et toi ?
//END PART1
Cependant je n'arrive pas à effectuer la même chose à partir d'un script Perl.
Code : Sélectionner tout - Visualiser dans une fenêtre à part perl -0777 -pe 's/\/\/BEGIN PART1.*?\/\/END PART1//gs' lecture.txt
Voici le script en question :
Ca merdouille ou ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 open LECTURE,"< lecture.txt" or die "E/S : $!\n"; open CORRECTION, "> correction.txt" or die "Impossible de creer le fichier : $!"; while ($ligne = <LECTURE>) { chomp ($ligne); $ligne =~ s/\/\/BEGIN PART1.*?\/\/END PART1//gs; print (CORRECTION "$ligne"); print (CORRECTION "\n"); } close CORRECTION; close LECTURE;
Merci d'avance.
Partager