Thread Pattern matching: zahlen aus einem String herauslesen (34 answers)
Opened by monetron at 2004-01-23 16:13

GH@NDI
 2004-01-26 18:05
#79473 #79473
User since
2003-09-21
16 Artikel
BenutzerIn
[Homepage] [default_avatar]
@pq
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/perl

use Benchmark;

my $line = "-- 23 ----------------------------------- 868689";

timethese(1000000, {
   substr => sub {
      my $zahlen = substr($line, 4,index($line, " ", 5) - 4);
   },
   regex1 => sub {
      my ($zahl) = $line =~ /-\s(\d+?)/; # Mein Ursprungs-RegEx
   },
   regex2 => sub {
      my ($zahl) = $line =~ /^-- (\d+)/; # Der letzte hier im Thread vorgeschlagene RegEx
   }
});

Gibt bei mir aus:
Code: (dl )
1
2
3
4
Benchmark: timing 1000000 iterations of regex1, regex2, substr...
   regex1:  5 wallclock secs ( 4.15 usr + -0.01 sys =  4.14 CPU) @ 241779.50/s (n=1000000)
   regex2:  3 wallclock secs ( 3.41 usr +  0.00 sys =  3.41 CPU) @ 292911.54/s (n=1000000)
   substr:  1 wallclock secs ( 0.78 usr +  0.00 sys =  0.78 CPU) @ 1280409.73/s (n=1000000)


// Wieso werden tabs innerhalb [ perl] und [ /perl] nicht dargestellt???\n\n

<!--EDIT|GH@NDI|1075133293-->

View full thread Pattern matching: zahlen aus einem String herauslesen