/$variable/ #### /$variable/o #### use Benchmark; my $qr_regex = qr/ab{1,}c{1,}/; my $str_regex = "ab{1,}c{1,}"; my $string = "asdabdabc"; timethese(10000000, { 'string' => sub { $string =~ /$str_regex/ }, 'string/o' => sub { $string =~ /$str_regex/o }, 'qr' => sub { $string =~ /$qr_regex/ }, }); #### Benchmark: timing 10000000 iterations of qr, string, string/o... qr: 11 wallclock secs (10.60 usr + 0.00 sys = 10.60 CPU) @ 943396.23/s (n=10000000) string: 11 wallclock secs (11.80 usr + 0.00 sys = 11.80 CPU) @ 847457.63/s (n=10000000) string/o: 7 wallclock secs ( 9.40 usr + 0.02 sys = 9.42 CP U) @ 1061571.13/s (n=10000000)