linux-l: sed/perl/wasauchimmer...
Steffen Dettmer
steffen at dett.de
Do Sep 21 23:34:46 CEST 2000
* Jens Dreger wrote on Thu, Sep 21, 2000 at 23:03 +0200:
> On Thu, Sep 21, 2000 at 01:13:13PM +0200, ruwen poljak wrote:
> >
> > >~wort durch <i>wort</i> ersetzen. Kann mir da mal jemand ein
> > >geeigneten Codeschnipsel vorwerfen, den ich dann verfeinern kann?
> > [...]
> >
> > bsp perl (kein einzeiler):
>
> Sorry, aber da _muss_ ich einfach was zu loswerden.
Och, meine Mail hätte ich mir sparen können...
> oder gleich "in-place":
>
> perl -pi -e 's|~(\w+)|<i>$1</i>|g' test1.txt
Mist, und das "g"lobal hab ich auch noch vergessen...
> > foreach (@back) {
> > $_ =~ s/(\w+)/<i>$1</i>/;
geht auch als
s/(\w+)/<i>$1</i>/;
aber noch jemand, der "g"lobal vergessen hat :)
> > push(@wert,$_);
push @wert
sollte reichen IIRC.
Aber das muß auch mit nur einem Array funktionieren!
> Abspeichern in @wert ist unnoetig, weil das $_ =~ ... Konstrukt die
> Eintraege von @back modifiziert.
Eben, warum dann nochmal "kopieren", wenn back schon geändert ist?!
> Nein, klappt nicht ;-) Z.B. kannst Du eine Variable nicht $datei-neu
> nennen oder Du musst '/' in s///-Konstrukten mit \ quoten.
${datei-neu} müßte auch gehen IIRC.
> Ich
> persoenlich finde es immer nicht schlecht, ein Beispiel vorher mal
> kurz laufen zu lassen, weil man doch davon ausgehen muss, dass man
> selbst die Fehler doch schneller findet als die anderen
> Listeteilnehmer.
:) Hast Recht, gerade bei SO einer Frage... Aber das "g" hätte
ich vermutlich trozdem vergessen ;)
oki,
Steffen
--
Dieses Schreiben wurde maschinell erstellt,
es trägt daher weder Unterschrift noch Siegel.
Mehr Informationen über die Mailingliste linux-l