Thread Unicode::Collate -> sehr langsam?
(26 answers)
Opened by bianca at 2014-12-27 18:42
Danke für deine Mühe. Dann lohnt es nicht, das weiter zu verfolgen.
Ich hab das inzwischen auch noch so optimiert: Code (perl): (dl
)
1 2 3 4 use Unicode::Collate; my $alphasorter_modul = Unicode::Collate->new(); my $alphasorter_regex = qr{[^0-9 a-z!"§$%&/()=?\{\[\]\}\]><|_\-+*,.:;#'~\^]}ix; my $sort = sub { $_[0] =~ $alphasorter_regex || $_[1] =~ $alphasorter_regex ? $alphasorter_modul->cmp($_[0],$_[1]) : lc $_[0] cmp lc $_[1] }; Das nutzt das langsame Modul wirklich nur, wenn es nötig ist. Hoffe ich zumindest :) Geschwindkeit ist auf jeden Fall annehmbar. Bei den Daten die ich damit sortiere sind diese ganzen Sonderzeichen und Umlaute "normal" wenig vertreten, also nicht übermäßig oft. 10 print "Hallo"
20 goto 10 |