novobranec, нищо лошо няма да се разчита на толкова добре оптимизирана машина като тази за регулярните изрази в Perl. Пример с 'eq' и regex:
use strict;
use Benchmark qw(:all);
$main::string = 'aaaaaaaaaa';
$main::buffer = 'a';
@main::array = split '', $main::string;
#my $results =
timethese(10_000_000, {
'equal' => '$main::buffer eq $_ or last for @main::array',
'regex' => '$main::string =~ /^\Q$main::buffer\E+$/o',
});
#cmpthese( $results );
__END__
output:
Benchmark: timing 10000000 iterations of equal, regex...
equal: 31 wallclock secs (27.16 usr + 0.01 sys = 27.17 CPU) @ 368053.00/s (n=10000000)
regex: 7 wallclock secs ( 7.23 usr + 0.00 sys = 7.23 CPU) @ 1383125.86/s (n=10000000)