#!/usr/bin/perl # vi:ts=4 sw=4 et: use strict; use warnings; my $string = 'FOO1 BAR FOO2'; my @regex = ( qr{(BAR)?}, qr{(BAR)?.*}, qr{\s(BAR)?.*}, qr{.(BAR)?.*}, ); for my $r ( @regex ) { my ($m) = $string =~ $r; printf "%8s : %s\n", ($m || 'no match'), $r; }