The
s//stuff/;modifystuff;print; (or alternately
s//stuff/;modifystuff;eval;)
formula is well worn turf for sigs. You do get props for the very sneaky 'ace' vs 'Ace' trick. Well done!
(I admit having to perl -le 'print "\u$&ace"'
to convince myself that the 'Ace' would get capatalized properly with a null match.)
-Blake