Would any line produced by evaluating the <$fh> expression ever end in \r\n?
On Windows? It would require CR CR LF in the file (assuming default $/ and IO layers). Extremely unlikely.
Elsewhere? It would require CR LF in the file (assuming default $/ and IO layers). Possible.
I think s{ $/ \z }{}xms would work
Well, that should be s{ \Q$/\E \z }{}xms (and /m and /s are useless) to be equivalent to the chomp.
And if $/ hasn't been changed, s/\n\z// could be used (since $/ defaults to LF on all systems).
But if I was going with a regex pattern, I'd go with s/\s+\z//. Handles \n, \r\n and other trailing whitespace. (TSV files being an exception.)
In reply to Re^3: Perl::Critic says don't modify $_ in list functions and other things
by ikegami
in thread Perl::Critic says don't modify $_ in list functions and other things
by Lady_Aleena
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |