use warnings; use strict; while () { print $1, $/ if m[^>(?=(.+?)\|)]; } __DATA__ >BTBSCRYR|IV|123123-43245273 tgcaccaaacatgtctaaagctggaaccaaaattactttctttgaagacaaaaaggccgccactatgacagcgattgcgactgtgcagatttccacatgtacctgagccgctg >BTBSCRYADASR|IV|123123-43245273