c:\@Work\Perl\monks>perl -wMstrict -MData::Dump -le "my $s = 'abc'; ;; my @captures = $s =~ m{ (?: (a)(b)(c) | (w)(x)(y)) (z)? }xms; dd \@captures; " ["a", "b", "c", undef, undef, undef, undef]