use File::Slurp; local $/ = undef; open FILE, "my_text.txt" or die "Couldn't open file: $!"; binmode FILE; $string = ; close FILE; if ($string=~/BEGIN hi(.*?)END/s) { print ${1}."\n"; }