http://www.perlmonks.org?node_id=291552


in reply to Perl Idioms Explained - @ary = $str =~ m/(stuff)/g

One should perhaps add, that the real reason why this magic works is because "=~" binds more thightly than "=", so the regex gets done first and then its results are evaluated in list-context (which is provided by using an array as an L-value).

CountZero

"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law