use strict; use warnings; undef $/; my $dna = ; while ($dna=~ m/(^\w{2}\s+\(\d+\)\s+Locus:(\s+\d+)+)/smg) { print "Found: $1\n"; }; __DATA__ ... dataset elided ...