#!/usr/bin/perl use strict; use warnings; my @filenames = qw/Reg Irreg/; my %ofh = map { open( my $fh, ">", $_.'ularOlios.txt' ) or die $!; $_ => $fh } @filenames; while () { my $o = ( /^\w+-/ ) ? $ofh{Irreg} : $ofh{Reg}; print $o $_; } close $_ for ( values %ofh ); __DATA__ 10002TU AGACATTACCTGTGAGACACCTTTC GCCTCCACCTCAGAGTCAG TCCATGGGAAGGATCTCCGTGAAATCA 10002TU-2 GCTCCAGCTAGAAGAGAATCC CCCACCAGGGCTGTGTAAG CCTGTGAGATAGTACAGCTGAAGAGTTGGC 10002TD TGTGTTGATTCTCAGCCTCTTG GACGGAGCACATAGGCAAAG TCTGTTCTTCTCAGCTGTCTTTGTTGCTGC 10003TU CAGCAAGCCCTGAGGTGTG CAGTGAACTGAGAAAGACGAGAGG TGCAAGTCCAGATGGAGGCCACC 10174TU-2 ACCTGAACAGCCTGACATGAAC TGGGATGGAGGGCAAAGTC CCACCTAGTATGACCCAGCACACCTCC