in reply to Trying to understand some body's old code.

Well, for one thing, what pops up is going to depend on what's in $HTMLLine to begin with. (which is a roundabout way of asking what your data is!). What's the input? Does it come from an HTML file?

Let's take a look at the regex and see if we can't tease out what the regex will do (whatever it was *intended* to do, we don't know ... but we might get a better idea by finding out what it does do!)

For example, this regex will replace each occurrence of something like $foo_bar with ${foo_bar}

Looking at it, the regex is designed to allow you to encase Perl variable names in curlies (but it won't quite do that, because the single quote isn't a valid part of a Perl variable name ... unless this is an oddity of the fact that colons in package names get translated to single quotes? I'm fuzzy on such details, wait for guru guidance on that part of the issue ...); you would usually want to do this inside of double-quote contexts, because

print "$foo_bar"
Will print the contents of he variable $foo_bar, but what if you wanted to print the contents of $foo followed by the literal "_bar"? You could use concatenation, but then you're just asking for syntax errors and your code's looking messy. So Perl allows you to enclose the actual name of the variable in curlies, e.g.
print "${foo}_bar"
Will print out the contents of $foo followed by the literal "_bar".

HTH

Philosophy can be made out of anything. Or less -- Jerry A. Fodor