'2c3w' cannot be matched only by the second parentheses; the first parentheses must match as well, otherwise the entire match would fail.
Incorrect.   You are using alternation so only one of the alternatives has to match for the entire match to be successful.
Given that both the first and the second must have matched successfully,
Using alternation only one or the other can match successfully, but not both at the same time.
Update:
PS: How does one tell which capture matched, if there is garbage in the other capture variables?
From perlvar:
One can use "$#-" to find the last matched subgroup in the last successful match.
In reply to Re^3: Leaking Regex Captures
by jwkrahn
in thread Leaking Regex Captures
by SuicideJunkie
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |