Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re: Comparing 2 different-sized strings

by Skeeve (Vicar)
on Aug 08, 2013 at 17:24 UTC ( #1048616=note: print w/ replies, xml ) Need Help??


in reply to Comparing 2 different-sized strings

  1. You didn't show what you've tried so far
  2. You didn't define how many mismatches are permitted
  3. You didn't tell what's a "nucleotid"
  4. You didn't define what to do if there are less than 5 nucleotids on either side
  5. You expect us to work for free?

So to "solve" your problem in the most easy way, matching your description:

my $s1='TCGAGTGGCCATGAACGTGCCAATTG'; my $s2='ATGATCCTG'; ($s1,$s2) = ($s2,$s1) if length($s1) > length($s2); my $len= length $s1; print "Matches:\n"; for (my $i=0; $i+$len+10 <= length $s2; ++$i) { print substr($s2, $i, $len+10),"\n"; }

prints:

Matches: TCGAGTGGCCATGAACGTG CGAGTGGCCATGAACGTGC GAGTGGCCATGAACGTGCC AGTGGCCATGAACGTGCCA GTGGCCATGAACGTGCCAA TGGCCATGAACGTGCCAAT GGCCATGAACGTGCCAATT GCCATGAACGTGCCAATTG

I didn't bother to put the number of mismatches. In most cases it will be length($s1) ;)

>

s$$([},&%#}/&/]+}%&{})*;#$&&s&&$^X.($'^"%]=\&(|?*{%
+.+=%;.#_}\&"^"-+%*).}%:##%}={~=~:.")&e&&s""`$''`"e


Comment on Re: Comparing 2 different-sized strings
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1048616]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (6)
As of 2014-09-02 23:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite cookbook is:










    Results (34 votes), past polls