A key quote from the documentation is "Perl uses \n to represent the "logical" newline" which implies that \n may not be \x0a. It then goes on to say that in MacPerl \n is \x0d.
By default Perl's text IO layers translate between the host OS's notion of a line end sequence and the character used internally to represent \n. If a string being manipulated hasn't been through an appropriate IO layer you will be dealing with the original CR and LF characters that were used. In various situations that means that an interpolated \n will not match LF (\x0a) and in many more situations it will not match an actual line end sequence (in Windows in particular).
As with many things in Perl, the default behavior is almost always what you want. So often so in fact that you tend to forget that there might be any other behavior.
In reply to Re^6: problem with 'bare LF' in script
by GrandFather
in thread problem with 'bare LF' in script
by powerhouse
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |