Help for this page
while (m/(\w{1,2})\[(.+?)\]/g) { push(@{$hash{$1}},$2); }
while (m/(\w{1,2})\[(.+?)\](?=(?:\w{1,2}\[)|\z)/g) { push(@{$hash{$1}},$2); }