#!/usr/bin/perl use strict; use warnings; use Benchmark qw(:all); my $string = "Dies ist ein Test mit einer längeren Zeile"; timethese( 5000000, { capture => sub { $string =~ /(es).*?T(es).*(ei)/}, noncapture => sub { $string =~ /(?:es).*?T(?:es).*(?:ei)/ }, } );