in reply to Re: Re-reading history from 2001
in thread Re-reading history from 2001 / using a capture during split

Yes, and to get rid of the undefs, one can use the branch reset pattern:
my @foo = split /(?|(A)|(B))/, "1A2B3"; use Data::Dumper; print Dumper \@foo;
$VAR1 = [ '1', 'A', '2', 'B', '3' ];
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]