in reply to Pattern searching allowing for mis-matches...
use strict; use warnings; use Text::Levenshtein qw(distance); my $text = 'TGATTGAA'; my $search = 'TGAT'; my $fuzz = 1; # how far off a match can we be for my $start (0..(length($text) - length($search)) ) { my $chunk = substr($text,$start,length $search); print "checking for $search from position $start: $chunk: "; my $dist = distance($search, substr($text, $start, length $search)); if($dist == 0) { print "Match!\n"; }elsif($dist <= $fuzz) { print "Close enough\n"; }else{ print "nope\n"; } }
checking for TGAT from position 0: TGAT: Match! checking for TGAT from position 1: GATT: nope checking for TGAT from position 2: ATTG: nope checking for TGAT from position 3: TTGA: nope checking for TGAT from position 4: TGAA: Close enough
--
I'd like to be able to assign to an luser
|
|---|