c:\@Work\Perl\monks>perl -wMstrict -le "my %rx = ( 2 => 'Oops...' ); my $rx = qr{ \b foo \b }xms; ;; my $n = 2; my $ry = qr{ $rx{2} X $rx{$n} Y (?:$rx){$n} }xms; print $ry; " (?msx-i: (?msx-i: \b foo \b ){2} X Oops... Y (?:(?msx-i: \b foo \b )){2} ) #### c:\@Work\Perl\monks>perl -wMstrict -le "use Regexp::Common qw(net); ;; my $ipv4_A = qr{ $RE{net}{IPv4} }xms; my $ipv4_B = qr{ \b $RE{net}{IPv4} \b }xms; ;; print 'match A' if '99999.9.9.99999' =~ $ipv4_A; print 'match B' if '99999.9.9.99999' =~ $ipv4_B; " match A #### my $octet = qr{ \d+ }xms; my $ipv4 = qr{ \b $octet (?: [.] $octet){3} \b }xms;