perl -wMstrict -le "my $string = 'foo/bar/pattern/baz/pattern/quux'; my $pattern = qr{ pat{2}ern }xms; if ($string =~ m{ ($pattern) }xms) { print qq(start: $-[1]); } else { print 'pattern not found'; } my $idx = index $string , 'pattern'; print qq(index: $idx); " start: 8 index: 8