Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Approximate index

by indapa (Monk)
on Mar 28, 2001 at 05:33 UTC ( #67707=perlquestion: print w/replies, xml ) Need Help??

indapa has asked for the wisdom of the Perl Monks concerning the following question:

Hi, I am searching for indexes of substrings in larger strings. However some of my substrings contain one character insertions/deletions/substitutions. Here is some sample data:
#substring(s) to search for: $substr = "AATGCTCCCCAATGAGGCA"; $substr2 = "TT##CACAAGGAACTTTTTT"; #Search for it in this string: $str = "CTTGAGTTATTAGCTGTTTGCCCCTGGGCAAGTTGTCTCACCTCTCCGTGTTTGTTTCCTCA +CCTATTGGACCAGGCCTATGGTTTTCAAACTGTGTTCCCTGGTGCTCTGAGACTTAGGGAAGGGGAACG +CCCACACTGGCAAGGCTAACACAAGCCGCCATATACCCACCCCACTTCACCCACAGCACCCCCCTTTCT +GTGTCTCATATACTGCGGGCCTATGCGA"; # the second substring is straightforward $pos = index( $string, $substr);
I would like the 2nd substr to match as well, despit having the # insertions.

Perl Cookbook recipe 6.13 discusses this, and suggests using the String:Approx module. However this module returns a list of matches and in scalar context returns the number of sucessful matches.

In my case I need approximate index matching. So the index function will return an answer despite finding an approximate match. Is there such a thing? Or are there other solutions that I am overlooking? Thank you for your help.

Replies are listed 'Best First'.
(tye)Re: Approximate index
by tye (Sage) on Mar 28, 2001 at 05:39 UTC

    String::Approx includes an aindex routine.

            - tye (but my friends call me "Tye")

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (6)
As of 2019-12-06 00:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Strict and warnings: which comes first?



    Results (154 votes). Check out past polls.

    Notices?