Re: [ssfr] sed : remplacer guillemets anglais par guillements français

[ Thread Index | Date Index | More debianworld.org/shellscript-fr Archives ]


Le 01-11-2008, à 15:51:29 +0000, Edi Stojicevic (estojicevic@xxxxxxxxxxxxxxx) a écrit :

> Lignes : 45
> 
> * dlist@xxxxxxxxxx <dlist@xxxxxxxxxx> [2008-11-01 14:36:45 +0100] wrote :
> 
> > Bonjour,
> 
> Salut,
> 
> > J'ai plusieurs fichiers tex où il faudrait remplacer les " par des «»,
> > je me dis que c'est pour sed ça.
> > 
> > le motif est 
> > "puis 0,1 ou plus espaces puis un mot puis 0,1 ou plus espaces et enfin"
> > 
> > Ce motif doit être remplacé par
> > 
> > «un_espace_insécable puis le mot puis un_espace_insécable puis »
> > 
> > Faut traduire ça en sed maintenant, et c'est là que ça se complique
> > (pour moi).
> 
> En perl :
> 
> perl -p -i.old -e 's/"\s+(\w+)\s+"/« $1 »/' fichier.txt

Désolé d'être mauvais joueur mais ça ne marche carrément pas ; sur mon
fichier test, voici la sortie : 

"un"
  "deux"
           "un mot"
        « un »
 " un mot voilà  "
pas de mot

et là non plus


Seuls les guillemets de la 4e ligne ont été remplacés. 


> L'avantage par rapport à sed est que tu n'es pas obligé de passer par un
> fichier tampon et la substitution est directement faite dans le fichier
> et tu as un fichier .old qui est le fichier original.

Merci pour l'explication.

Steve

---


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/