|Perl: the Markov chain saw|
Re^3: Strange regex to test for newlines: /.*\z/by xicheng (Sexton)
|on May 22, 2007 at 18:17 UTC||Need Help??|
$ and \Z work pretty much the same in normal mode, both match the end of search string or before a string-ending newline. the difference between them lies in the multiline mode when you issue an 'm' modifier.
\z means the real end of string even after the string-ending newline.
If you use an 's' modifier, then things become more different but that's mainly coz of the '.' which changes its behaviors, not the three end-of-string anchors..
check the following snippets:
BTW. When comparing between \z, \Z and $, it's probably better to avoid using .* or .? quanifiers the ways in your examples.
BTW. my previous statement about \Z had some error and I have updated that post.