use warnings; use strict; my $usage = "perl select_bracker.pl [bracker gtf] [output id list]\n"; my $gfin = shift or die $usage; my $output = shift or die $usage; open(IN, '<', $gfin); open(OUT, '>>', $output); while (my $record = ){ $record =~ s/\R//g; if ($record =~ /^.*transcript_id "([^"]*).*class_code "([^"]*)/){ my $trans = $1; my $class = $2; if($class eq 's' | $class eq 'x' | $class eq 'u'){ print OUT "$trans\n"; } } } close IN; close OUT;