5 use Benchmark qw( timethese cmpthese ) ;
7 my $dur = shift || -2 ;
9 my $data = 'abc' x 30 . "\n" x 1000 ;
13 # my $result = timethese( $dur, {
14 # split => 'my @lines = splitter()',
15 # regex => 'my @lines = regex()',
16 # damian => 'my @lines = damian()',
19 # cmpthese( $result ) ;
21 $data = "abcdefgh\n\n\n" x 5 ;
22 $data = "abcdefgh\n" x 2 . 'z' ;
32 print "REG\n", map "[$_]\n", @paras ;
35 #print "DAM\n", map "[$_]\n", @paras ;
37 sub splitter { split( m|(?<=$sep)|, $data ) }
38 sub regex { $data =~ /(.*?$sep|.*)/sg }
39 sub damian { $data =~ /.*?(?:$sep|\Z)/gs }