c:\@Work\Perl\monks>perl -wMstrict -le "use YAPE::Regex::Explain; ;; my $rx = qr{ [0-9] | [a-e]:[0-9] | [a-e] }xms; print YAPE::Regex::Explain->new($rx)->explain; " The regular expression: (?msx-i: [0-9] | [a-e]:[0-9] | [a-e] ) matches as follows: NODE EXPLANATION ---------------------------------------------------------------------- (?msx-i: group, but do not capture (with ^ and $ matching start and end of line) (with . matching \n) (disregarding whitespace and comments) (case-sensitive): ---------------------------------------------------------------------- [0-9] any character of: '0' to '9' ---------------------------------------------------------------------- | OR ---------------------------------------------------------------------- [a-e] any character of: 'a' to 'e' ---------------------------------------------------------------------- : ':' ---------------------------------------------------------------------- [0-9] any character of: '0' to '9' ---------------------------------------------------------------------- | OR ---------------------------------------------------------------------- [a-e] any character of: 'a' to 'e' ---------------------------------------------------------------------- ) end of grouping ----------------------------------------------------------------------