Mercurial > repos > john-mccallum > ssr_marker_design
diff MISA/p3_in.pl @ 0:3006582bfc76
Uploaded V1.0 MISA tools and helper scripts
author | john-mccallum |
---|---|
date | Wed, 14 Sep 2011 23:57:57 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MISA/p3_in.pl Wed Sep 14 23:57:57 2011 -0400 @@ -0,0 +1,34 @@ +#!/usr/bin/perl -w +# Author: Thomas Thiel +# Program name: primer3_in.pl +# Description: creates a PRIMER3 input file based on SSR search results + +open (IN,"<$ARGV[0]") || die ("\nError: Couldn't open misa.pl results file (*.misa) !\n\n"); + +#my $filename = $ARGV[0]; +#$filename =~ s/\.misa//; +open (SRC,"<$ARGV[1]") || die ("\nError: Couldn't open source file containing original FASTA sequences !\n\n"); +open (OUT,">$ARGV[2]"); + +undef $/; +$in = <IN>; +study $in; + +$/= ">"; + +#my $count; +while (<SRC>) + { + next unless (my ($id,$seq) = /(.*?)\n(.*)/s); + $seq =~ s/[\d\s>]//g;#remove digits, spaces, line breaks,... + while ($in =~ /$id\t(\d+)\t\S+\t\S+\t(\d+)\t(\d+)/g) + { + my ($ssr_nr,$size,$start) = ($1,$2,$3); + #$count++; + print OUT "PRIMER_SEQUENCE_ID=$id"."_$ssr_nr\nSEQUENCE=$seq\n"; + print OUT "PRIMER_PRODUCT_SIZE_RANGE=100-280\n"; + print OUT "TARGET=",$start-3,",",$size+6,"\n"; + print OUT "PRIMER_MAX_END_STABILITY=250\n=\n" + }; + }; +#print "\n$count records created.\n";