in reply to two regexes in one function call

It does print [2, 6, 38] for me, with perl-5.10.0 on Debian GNU/Linux.

Maybe something's wrong with your version of perl?