[Bioperl-l] Search for sequence inside sequence
carandraug+dev at gmail.com
Tue Feb 21 05:18:37 EST 2012
On 21 February 2012 02:28, Fields, Christopher J <cjfields at illinois.edu> wrote:
> There is a BioPerl-ish way of doing this, namely Bio::Tools::SeqPattern. Might be worth a look (though a simple regex should also suffice).
Thank you both.
I looked into this class and into the code in
examples/tools/seq_pattern.pl. It seems this module is more to create
a regexp from other string which can then be used on a normal regexp.
$pattern = "SS";
$regex = new Bio::Tools::SeqPattern(-seq =>$pattern, -type =>'Dna');
print "Found in $file" if $seq->seq =~ /$regex->expand/i;
print "Found in $file" if $seq->seq =~ /$regex->revcom(1)->str/i;
## to also search on the revcom
Do you think it is acceptable to add a method that would allow for:
say "Found in $file" if $seq->match(-seq-> $pattern );
maybe have an extra option that will also check the revcom of:
say "Found in $file" if $seq->match(-seq-> $pattern -revcom-> 1);
More information about the Bioperl-l