Philipp Hasenfratz: Ist XML mit Perl effektiv?

Beitrag lesen

Halihallo Matti

Wenn z. B. eine CSV über RegExp eingelesen wird, muss die Datei auch eingelesen werden und dann die RegularExpressionEngine anlaufen (und die ist auch nicht grad super-schnell).

Bitte? Bei CSV verwendet man DBD::CSV oder parst es im Notfall (=Modul nicht vorhanden) selber mit split() (obwohl ich mir da nicht sicher bin, ob es nicht auch die RegEx-Engine anwirft).

sowohl DBD::CSV, wie auch split greifen IMHO auf Regexp zurück (obwohl wahrscheinlich einige Optimizer verwendet werden) => eigener Regexp wohl am schnellsten. Bei DBD::CSV muss der SQL-Query zudem noch über SQL::Parser geparsed werden.

$t = 'test<hello>test2<bla>test3';
print join(', ', split(/<(.*?)>/, $t));

wahrscheinlich wird dies durch RegExp gemacht, wobei

$t = 'test;test2;test3';
print join(', ', split(/;/, $t));

nicht über RegExp geschieht.

z. B. in php muss diese Unterscheidung manuell geschehen. Explode für "einfache" und split für "komplexe" splitts... Ob dies in Perl automatisch geschieht, bin ich mir nicht sicher (ich hoffe es jedoch).

Viele Grüsse

Philipp