in reply to Reading in a text file with "multi line lines"

To begin with, single quotes don't allow most escape-codes, including newlines. So in your example, $_ = '[^\\]\n', you must use double-quotes:
$_ = "[^\\]\n";
With single quotes, your string will have backslashes and letter-n characters in them.

--
[ e d @ h a l l e y . c c ]