my @lines = do { local (*ARGV, $/); @ARGV = 'filename'; (my $s = <>) =~ s/\n\+//g; $s =~ /(.*\n?)/g; };