$ perl -Mstrict -Mwarnings -E ' my $dna = q{atctcggataatgggataaaaatataggctataaatggcgccccggctaattttt}; if ($dna =~ /atg([acgt]+)(?!(taa|tag|tga))/xms) { say $1; } ' ggataaaaatataggctataaatggcgccccggctaattttt #### $ perl -Mstrict -Mwarnings -E ' my $dna = q{atctcggataatgggataaaaatataggctataaatggcgccccggctaattttt}; if ($dna =~ /atg([acgt]+)(?:taa|tag|tga)/xms) { say $1; } ' ggataaaaatataggctataaatggcgccccggc #### $ perl -Mstrict -Mwarnings -E ' my $dna = q{atctcggataatgggataaaaatataggctataaatggcgccccggctaattttt}; if ($dna =~ /atg([acgt]+?)(?:taa|tag|tga)/xms) { say $1; } ' gga #### $ perl -Mstrict -Mwarnings -E ' my $dna = q{atctcggataatgggataaaaatataggctataaatggcgccccggctaattttt}; if ($dna =~ /atg(.+?)(?:taa|tag|tga)/) { say $1; } ' gga #### /atg (.+?) (?>taa|tag|tga)/msx