open( FH, "filename" ) || die "couldn't open\n"; while ( ) { $data .= $_; } while ( $data =~ m/PATTERN/g ) { # executed code # executed code...etc. }