use strict;
sub AAA{print "__CHINPO__$_[0]\n";}
sub BBB{print "__MAMUKO__$_[0]\n";}
sub CCC{print "__UNKO__$_[0]\n";}
my %subs=(AAA=>\&AAA,BBB=>\&BBB,CCC=>\&CCC);
while('AAABBBCCCAAACCCBBB'=~/AAA|BBB|CCC/g){&{ $subs{$&}}($&);}