Hallo opi,
aber effizienter geht es z.B. so:
Falsch. Wenn du schon von Effizient sprichst ...
Benchmark::cmpthese(-1, {
'substr' => sub { for (my $i = 0 ; $laenge > $i ; $i += 4) {
my $val = substr($string,$i,4);
next if $val =~ /^(\s+|)$/;
push @$bloecke, $val;
}
},
'split' => sub { @$bloecke = grep { /^\S+$/ } split /(\S{1,4})/, $string; }
});
ich spreche nicht von Performanz.
Ausschnitt aus <http://de.wikipedia.org/wiki/Effizient>:
...ist das Verhältnis eines in definierter Qualität vorgegebenen Nutzens zu dem Aufwand, der zur Erreichung des Nutzens nötig ist.
...In der Informatik meint man mit Effizienz entweder die Leistung des implementierten Algorithmus oder Komplexität (bei Algorithmen)
Man kann vielleicht eine längere Debatte führen, welche Methode komplexer ist.
Meine Meinung ist, dass die generelle Verwendung von grep/split "perlisher" und übersichtlicher ist.
Gruß,
Benne
--
ie:% fl:( br:> va:) ls:> fo:| rl:° ss:) de:[ js:| ch:| mo:} zu:)