[PLUTO-tech] script per ripulire un doc xsl-fo mal formattato

Luca Campo Dall Orto lucagraph a libero.it
Mer 31 Mar 2004 10:25:49 CEST


Grazie, ora funziona tutto!bisogna che mi impari per bene le regexp, sento che mi torneranno utili...

> Caaaaaavoli, avevo preparato male il test e non me ne ero accorto.
>
> Questo dovrebbe funzionare (cavoli, sono le 22:10 e mi sto perdendo
> gli anime di mtv.
>
> #-----------------------------------[inizio]-------------------
> #!/bin/bash
> #
> 
> # *.xsl e` un qualcosa che ti elenca tutti i file da modificare,
> for i in *.xsl
> do
>   cp $i $i".tmp"
>   # Il trucco e` fare una regexp con due parti, il prima (\1) e il dopo (\2)
>   # l'attributo ripetuto.
>   sed -e 's/\(<[^>]*text-decoration="[^>]*"[^>]*\)text-decoration="[^"]*"\([^>]*>\)/\1\2/g' < $i".tmp" > $i
>   rm $i".tmp"
> done
> 
> # Nota, la regexp e` stata sviluppata in 10 minuti sotto Emacs e poi
> #  provata con sed.
> #-----------------------------------[fine]---------------------
>
> Era sbagliata l'espressione regolare  che faceva un match troppo ampio
> (le regexp tendono ad essere voraci ed a tornare il match piu` grosso.
>
> Ho messo come condizione per identificare il secondo attributo (quello
> da togliere)
>
> text-decoration="[^"]*"
>
> invece che
>
> text-decoration="[^>]*"
>
> e mi pare funzioni.
>
> Ah, quando riporti uno script, attento a non inserire a capo spurii
>
>  /\            ___
> /___/\__|_|\_|__|___Gian Uberto Lauri_____________________
>   //--\ | | \|  |   Integralista GNUslamico e fancazzista
> \/
>
>



Maggiori informazioni sulla lista pluto-tech