salut à tous, je débute en perl,
je veux faire un prog qui lit et modifie à la volée un fichier
ex, j'ai le fichier suivant:
Code :
- <map version="0.7.1">
- <node TEXT="root">
- <node TEXT="droite" POSITION="left">
- <node LINK="bas.mm" TEXT="lien"/>
- </node>
- <node COLOR="#ff3333" TEXT="gauche2" POSITION="right">
- <edge COLOR="#d4d0c8"/>
- <node TEXT="gauche2.1">
- <edge COLOR="#d4d0c8"/>
- <node LINK="bas.mm" TEXT="lien"/>
- <node TEXT="gauche2.1.1"/>
- </node>
- </node>
- </node>
- </map>
|
et je voudrais par ex remplacer tous les mot TEXT par texte.
j'ai fais le pgr suivant:
Code :
- #!/usr/bin/perl
- $fichier = "aaa.mm";
- open(FILE,"+<$fichier" ) || die("Erreur de lecture de $fichier, Erreur: $!\n" );
- #print("Quel mot rechercher : " );
- $cherche = $ARGV[0];
- $ligne = 0;
- $sum = 0;
- $cond = 0;
- while(<FILE> ){
- $cond=$sum;
- $ligne +=1;
- $sum += (s/$cherche/$cherche/g);
- if($cond != $sum){
- print("Ligne $ligne ==> " );
- print("$sum\n" );
- }
- }
- close(FILE);
- print("----------------------------------------------------\n" );
- print("Votre fichier contient $sum fois le mot '$cherche'\n" );
|
il me permet de détecter et non de substituer, et je vois pas trop comment faire.
si quelqu'un a une idée
merci bcp