in reply to Only printing last hash (repost)

After the first pass through the loop, the variable $specifics has had all of the template variables edited out. On each subsequent pass, the edit doesn't change anything.

Assign $specifics inside the loop and it will work much better. (I'd also suggest switching to any of the many templating modules on CPAN earlier rather than later. They'll take care of problems that you haven't, like what happens if $ab has [d] in it.)