[linux-l] regex problem

Olaf Radicke briefkasten at olaf-radicke.de
So Nov 6 13:30:34 CET 2011


Hi,


ich schaffe es einfach nicht ein regex hin zu bekommen, um alle Kommentare in
einem LaTeX-Dokument raus zu löschen.


Versucht habe ich es hier mit:


sed 's/[^\\]%.*$//g' ./testfiles/simple_single.tex


Also: "Suche alle % die kein vorangestelltes \ haben, gefolgt mit beliebigen
Zeichen bis zum ende der Zeile".


Strich \% ignorieren, da maskiert, und alle anderen löschen.


Das Geht:


In dem Fall ist das Ergebins, das was ich will:


or at hamburg:~/Dokumente/git/TeXConv.html$ echo "Es sind 5\% der der Kommentare
fehlerhaft. % ein kommentar." | sed 's/[^\\]%.*$//g'
Es sind 5\% der der Kommentare fehlerhaft.


Hier aber nicht:


or at hamburg:~/Dokumente/git/TeXConv.html$ echo "% ein kommentar." | sed
's/[^\\]%.*$//g'
% ein kommentar.
 
Die Konstruktion funktioniert auch nicht richtig:
 
or at hamburg:~/Dokumente/git/TeXConv.html$ echo " %ein kommentar." | sed
's/.*[^\\]%.*$//g'

or at hamburg:~/Dokumente/git/TeXConv.html$ echo "%ein kommentar." | sed
's/.*[^\\]%.*$//g'
%ein kommentar.
 
Ich wäre dankbar, wenn mir Jemand weiterhelfen könnte!
 
Gruß
 
Olaf



 
 



Mehr Informationen über die Mailingliste linux-l