Thanks Choroba for the suggestions.
I am checking a rule against a string of sequence (19 letter longs) in a while loop and formed this filter
So basically, I want to match A at position 3, T at position 10, [ACT] at position 13, [AT] at position 19 and atleast 3 A's or 3 T's from position 15-19 and the $gcper should be in between 30-52.
if (($seq =~/\w{2}A\w{6}T\w{2}[ACT]\w[GCA{4}T{4}]{4}[AT]/)
&& ($gcper >= 30 && $gcper <= 52))
{
print "$seq\t$seqpos\t$gcper\n";
}
I checked the result and it seemed to work, i need help in wheather this code writing is ok or i can improve it better.
Another thing which I want to check is: no GC stretch more than 9 letters long, but I don't know how I can insert that check in the above code.
GCAGGTGGATCTATTTCAT 3201-3220 42.11
TAAGAGGTGTTATTTGGAA 3268-3287 31.58
ATACGATGCTTCAAGAGAA 3346-3365 36.84
CAAGCTCATCATACTGGCT 1201-1220 47.37
GGTACTGACTTTGCTTGCT 2923-2942 47.37
CGTAGTGTTAAGTTATAGT 3003-3022 31.58
GTATGGGTAGGGTAAATCA 3248-3267 42.11
CCTGCTGTGATACGATGCT 3337-3356 52.63
CCTGCGCGCGCGCGATGCT 3300-3318 50.63
|