in reply to matching every occurrence of a regex

Have you tried local $/ ? The regex seems to function fine if you flatten the file. This works for me:
use strict; my($FILE,$SITE); print "Protein Sequencer\n\nInput Dataset file name: "; $FILE = <STDIN>; #chomp($FILE); local $/; #Null the $/ to search through a flat file print "\nLoading Dataset - Be patient.\n"; open DATA, $FILE or die $!;# Open File $_ = <DATA>;# Load File to Ram close DATA or die $!;# Close File print "\"N\" Sites\n---------\n"; while ($_ =~ m/\w{1,12}\s+(\d{1,5})\s+[a-zA-Z]{4}/gs) { $SITE = $1; print "$SITE\n"; }