Thread Viele RegExp Checks auf viele Dateien (17 answers)
Opened by Tr0Nix at 2007-12-21 10:51

Tr0Nix
 2007-12-21 10:51
#104085 #104085
User since
2006-11-21
44 Artikel
BenutzerIn
[default_avatar]
Hallo zusammen

Ich mache mich in wenigen Wochen an meine Diplomarbeit. Dabei geht es grob gesagt um viele Regular Expressions, welche auf viele Dateien angewendet werden.

Das Script, welches dies aktuell löst, ermittelt mit File::Find die Dateien und führt auf jede gefundene Datei eine Callback Funktion aus.

Die Callback Funktion wiederrum öffnet die übergebene Datei und liest diese Zeilenweise ein, wobei jede Zeile durch etwa 20+ Regular Expressions geschickt wird um gewisse Prüfungen vorzunehmen.

Im Verlaufe meiner Diplomarbeit möchte ich nun das Script von Scratch auf neu programmieren und die Regular Expressions überarbeiten. Da Performance ein ausschlagsgebender Punkt ist, wollte ich euch Fragen, ob ihr mir Tipps oder Anlaufsstellen geben könnt, die mich bei der Arbeit unterstützen. Auf Weihnachten gibts auf alle Fälle das O'Reilly Regular Expressions schlag-mich-tot-Kompendium :).

Umfang:
Die Files sind in erster Linie Sourcecode. Sprich in den allermeisten Fällen < 1MB, dafür sehr viele Dateien.

Fragen die beispielsweise bei mir aufgetaucht sind:
- Macht es Sinn, die Datei zuerst komplett ins Memory einzulesen statt Zeilenweise mittels $zeile = <FD>?
- Die aktuellen Regular Expressions nutzen alle markierte Subexpressions (also die runden Klammern () um anschliessend mit $1, $2... zuzugreifen) auch wenn diese Informationen teilweise nicht genutzt werden. Kann das die Performance beeinträchtigen?
- Sind Regular Expressions CPU-lastig? Das Script läuft zeitweise auf einem Multi-CPU Sun Server -> Multithreading

Bin gespannt auf eure Meinungen/Ideen,

liebe Grüsse
tr0nix

View full thread Viele RegExp Checks auf viele Dateien