Thread Probleme mit anonymen subs
(13 answers)
Opened by Ronnie at 2005-03-10 09:25
Auf der DaLUG-Mailingsliste hat jemand nach einer Möglichkeit gesucht in einer Logdatei Ersetzungen anhand einer Zuordnungsliste in einer weiteren Datei durchzuführen. Eine mögliche Lösung ist es eine LookUpTable zu bauen und dann Zeile für Zeile die Ersetzungen durch zuführen:
Code: (dl
)
1 #!/usr/bin/perl Dies war mein Lösungsvorschlag. Jemand anderes schlug eine Lösung mit sed vor, die in zwei Schritten arbeitet. Erst wird die Datei mit den Zuordnungen verarbeitet (das was ich oben in _ _DATA_ _ gestopft habe) und eine weitere sed-Datei erzeugt: Code: (dl
)
uidf2920 -- Schulz wird zu s/uidf2920/Schulz/ Diese wird dann über die Logdatei laufen lassen und erzeugt das gewünschte Ergebniss. Es gab noch einige andere interessante Lössungsvorschläge, aber zurück zu Perl und sed. Ich fand die Idee ganz interessant und dachte mir man könnte das auch in Perl mit einem Array voller anonymer Funktionen machen, sozusagen der Lambda-Weg zur Lösung. Das die Lösung mit der LookUpTable deutlich effizienter sein dürfte ist mir bewusst, aber mir ging es eher um die Umsetzung der Idee: Code: (dl
)
1 #!/usr/bin/perl Leider funktioniert mein Skript nicht wie es sollte - es führt keine Ersetzungen durch. Irgendwo muss ich etwas elementares übersehen haben, vieleicht fällt euch ja was auf?! EDIT: Das leidige _ _DATA_ _ -Problem.\n\n <!--EDIT|Ronnie|1110439628--> |