Re: zahlen in text bearbeiten
Heiko Schlittermann <hs@schlittermann.de> wrote:
> Simon Reinhardt <simon.reinhardt@stud.uni-regensburg.de> (Mi 27 Feb 2013 20:05:58 CET):
>> Folgendes Problem: ich habe einen langen ASCII Text, in dem Zahlen
>> vorkommen. Ausschnitt:
>> [...]
>> (bookmarks
>> ("Cover" "#1")
>> ("Contents" "#4")
>> ("Preface" "#10")
>> ("Notations and Conventions" "#18")
>> ("Editor's Foreword" "#21")
>> ("I Feynman Diagrams and Quantum Electrodynamics" "#22"
>> [...]
>> Gibt es einen Weg, wie ich alle Zahlen um eine Konstante erhöhen kann?
>> Also z.B. 1 -> 22, 4 -> 25 etc.
>> Das von Hand zu machen würde ewig dauern...
> perl -pe 's/(?<=#)(\d+)/$1+10/e' < text
Mit awk (Simons Vorlage in bsp.txt abgelegt):
cat bsp.txt | awk -F# '{ if ($2 != "") print $1 "#" $2+21 "\")" ; else print $0 }'
Ausgabe:
(bookmarks
("Cover" "#22")
("Contents" "#25")
("Preface" "#31")
("Notations and Conventions" "#39")
("Editor's Foreword" "#42")
("I Feynman Diagrams and Quantum Electrodynamics" "#43")
Ich sehe gerade, in Simons Vorlage fehlt in der letzten Zeile die
schließende Klammer. Falls das nicht nur ein Versehen war, müsste er
den Quelltext noch entsprechend anpassen.
Gruß, Martin
Reply to: