Don P: Ersetzen durch Funktionsergebnis mit s///g?

Hallo Perlen,

Meine intensivere Perl-Zeit liegt schon eine Weile zurück, und den O'Reilly habe ich gerade verliehen. Eine wahrscheinlich einfach zu beantwortende Frage:

Es sollen in einer Textdatei bestimmte Zahlen gesucht und ersetzt werden nach einer Umrechnung derselben. Gibt es eine Möglichkeit wie (Pseudocode):

s/ x / f(x) /g

Konkret will ich alle Font-Größenangaben um einen bestimmten Faktor skalieren.

Ich meine, einmal gelesen zu haben, dass das mit direkt s///g möglich ist, d.h. ohne erst zu splitten um die Fundstellen zu isolieren und nachher wieder zusammenzusetzen. Wenn ja, wie würde die Syntax im Ersetzungsteil lauten (wohl eine Funktion von \1, \2) bzw. wo kann ich das mal nachlesen?

Danke und Gruß,
Don P

  1. Ich meine, einmal gelesen zu haben, dass das mit direkt s///g möglich ist, d.h. ohne erst zu splitten um die Fundstellen zu isolieren und nachher wieder zusammenzusetzen. Wenn ja, wie würde die Syntax im Ersetzungsteil lauten (wohl eine Funktion von \1, \2) bzw. wo kann ich das mal nachlesen?

    Klingt nach dem e-Modifier (e wie evaluate). Nachzulesen in perlretut (suche nach "//e").

    Siechfred

    --
    Hinter den Kulissen passiert viel mehr, als man denkt, aber meistens nicht das, was man denkt.
    1. Danke! *YMMD*

      Don P