opi: Pointer ans Ende der Datei setzen mit seek

Beitrag lesen

Hallo,

Tag opi.

Kann ich da noch etwas Tunen?

Ja, einen RegExp im Listenkontext, der liefert mir hier das beste Ergebnis:

Benchmark::cmpthese(-1, {

'substr'  =>  sub { (my $f0 = substr($string,  0, 10)) =~ s/\s+$//;
                               (my $f1 = substr($string, 11, 10)) =~ s/\s+$//;
                               (my $f2 = substr($string, 21, 10)) =~ s/\s+$//;
                               (my $f3 = substr($string, 31, 10)) =~ s/\s+$//;
                               (my $f4 = substr($string, 41, 10)) =~ s/\s+$//;
                               (my $f5 = substr($string, 51, 10)) =~ s/\s+$//;
                               (my $f6 = substr($string, 61, 10)) =~ s/\s+$//;
                               (my $f7 = substr($string, 71, 10)) =~ s/\s+$//;
                               (my $f8 = substr($string, 81, 10)) =~ s/\s+$//;
                               (my $f9 = substr($string, 91, 10)) =~ s/\s+$//;
                             },
    'split'   =>  sub { my @fn = split /\s+/, $string; },
    'regexp'  =>  sub { my @fn = $string =~ /(\w+?\d)/g; },
});


>   
> Ergibt:  
>   
>           Rate regexp substr  split  
> regexp 24325/s     --   -51%   -52%  
> substr 49320/s   103%     --    -2%  
> split  50242/s   107%     2%     --  
  
wie kommst du darauf, dass regexp mit 24325 Iterations pro Sekunde  
das beste Ergebnis liefert? Für mich ist split noch am schnellsten  
mit 50242 Iterations pro (CPU-) Sekunde.  
  
Oder irre ich mich an dieser Stelle etwa?  
  
Greez,  
opi

-- 
Selfcode: ie:( fl:( br:^ va:) ls:] fo:) rl:( n4:? ss:| de:] ch:? mo:|