in reply to Regex question
It returns true or false because that's what =~ is documented to do.
In list context, matching returns the list of captured elements. So you most likely see in your code:
($parse) = $test_line =~ /(Happy).*/; [download]