bash-2.05$ perl extract_seqs.pl
main::check_gene() called too early to check prototype at extract_seqs.pl line 22.
main::check_gene_seq() called too early to check prototype at extract_seqs.pl line 27.
main::extractseq() called too early to check prototype at extract_seqs.pl line 32.
syntax error at extract_seqs.pl line 106, near "$endpos) "
Execution of extract_seqs.pl aborted due to compilation errors.
bash-2.05$
####
while (){
if ($_ =~ /\s{3}\/){
check_gene ($_);
}
if ($_ =~ /\s{4}\/){
check_gene_seq ($_);
$label = "$gene_seq_id.$gene_seq_status.$gene_seq_CDS_number.$gene_seq_number_of_CDSs.$gene_seq_sequence_source.$gene_seq_startpos.$gene_seq_endpos.$gene_seq_startopen.$gene_seq_endopen.$gene_seq_complement";
}
extractseq ($label,$gene_seq_sequence_source,$gene_seq_startpos,$gene_seq_endpos);
}
####
#!/usr/bin/perl -w
#########
### Programed 15_12_02_by Matthew Redden
#########
#use strict;
mkdir Output;
$input = "new_out_again_12_12_02_B_hand_edit_15_12_02.txt";
open (INPUT, "<$input");
while (){
if ($_ =~ /\s{3}\/){
check_gene ($_);
}
if ($_ =~ /\s{4}\/){
check_gene_seq ($_);
$label = "$gene_seq_id.$gene_seq_status.$gene_seq_CDS_number.$gene_seq_number_of_CDSs.$gene_seq_sequence_source.$gene_seq_startpos.$gene_seq_endpos.$gene_seq_startopen.$gene_seq_endopen.$gene_seq_complement";
}
extractseq ($label,$gene_seq_sequence_source,$gene_seq_startpos,$gene_seq_endpos);
}
sub check_gene($) {
#
my $line = $_;
if ($line =~ /\s{3}\/){
$gene_id = $1;
$gene_label = $2;
}
else {
print "ERROR. Somebody has altered the regular expression";
}
return $gene_id;
return $gene_label;
}
sub check_gene_seq($){
#
if ($_ =~ /\s{4}\/){
my $gene_seq_id = $1;
my $gene_seq_status = $2;
my $gene_seq_CDS_number = $3;
my $gene_seq_number_of_CDSs = $4;
my $gene_seq_sequence_source = $5;
my $gene_seq_startpos = $6;
my $gene_seq_endpos = $7;
my $gene_seq_startopen = $8;
my $gene_seq_endopen = $9;
my $gene_seq_complement = $10;
}
else {
print "Error. Someone has altered the reguar expression";
}
return $gene_seq_id;
return $gene_seq_status;
return $gene_seq_CDS_number;
return $gene_seq_number_of_CDSs;
return $gene_seq_sequence_source;
return $gene_seq_startpoks;
return $gene_seq_endpos;
return $gene_seq_startopen;
return $gene_seq_endopen;
return $gene_seq_complement;
}
sub extractseq($$$$){ # Pass through the FASTA label, the location of sequence, the start pos and the end pos.
$label = $_[0];
$gene_seq_sequence_source = $_[1];
$startpos = $_[2];
$endpos) = $_[3];
print "$gene_seq_sequence_source\n";
sleep 1;
print "system ('extractseq $gene_seq_sequence_source extracted_seq_$label.txt -regions \"$startpos..$endpos\"')\;";
system ("extractseq $gene_seq_sequence_source extracted_seq_$label.txt -regions \"$startpos..$endpos\"");
}