my @matches = ( $string =~ m/(\[.+?\])(?=\[|\z)/g );