use strict; my ($start, $end) = ("bar".$/, $/."xxx"); my $data = join "", ; my ($inbetween) = $data =~ /$start(.*?)$end/s; print $inbetween, $/; __DATA__ foo bar baz quux zab xxx foo