Further to that, you can find this documented in perlop under the m/PATTERN/cgimosx subsection of the Regexp Quote-Like Operators section:
in reply to Re: strange behavior of parenthesis
in thread strange behavior of parenthesis
If the /g option is not used, perlop in a list context returns a list consisting of the subexpressions matched by the parentheses in the pattern, i.e., ($1, $2, $3...). (Note that here $1 etc. are also set, and that this differs from Perl 4's behavior.) When there are no parentheses in the pattern, the return value is the list (1) for success. With or without parentheses, an empty list is returned upon failure.