Bon en considérant que ton fichier d'exemple (test) soit ça :
*************************
* *
* ceci est le fichier *
*{qui n'a pas de sens}*
*************************
Toin fichier résultat :
*************************
* *
* ceci est le fichier *
*{}*
*************************
Une commande qui te fait ça :
cat test | perl -ne 's/\*{[^}]*}\*/*{}*/; print $_'
les \* c'est un backquote des * qui ont un sens de répétition infinie du terme prédédent dans le premier member d'une expression régulière.
Exemple : [^}]*
On répète autant de fois qu'on veux le motif : ^} soit tout sauf une accolade fermante.
Donc \*{[^}]*}\* marche pour tout motif *{n'importe quo ici}*
Après ça le remplace et ça affiche le résultat dans tout les cas.
# Heu précise exactement ce que tu veux...
Posté par Raphaël G. (site web personnel) . En réponse au message Parcourir et modifier un fichier. Évalué à 2.
*************************
* *
* ceci est le fichier *
*{qui n'a pas de sens}*
*************************
Toin fichier résultat :
*************************
* *
* ceci est le fichier *
*{}*
*************************
Une commande qui te fait ça :
cat test | perl -ne 's/\*{[^}]*}\*/*{}*/; print $_'
les \* c'est un backquote des * qui ont un sens de répétition infinie du terme prédédent dans le premier member d'une expression régulière.
Exemple : [^}]*
On répète autant de fois qu'on veux le motif : ^} soit tout sauf une accolade fermante.
Donc \*{[^}]*}\* marche pour tout motif *{n'importe quo ici}*
Après ça le remplace et ça affiche le résultat dans tout les cas.
Vala en espérant que ça soit suffisant...