Merge pull request #3563 from c-blake/devel
Fix loop index bug in scan for a[s] in b[s..s+len2-1].
This commit is contained in:
commit
3c5a0b1b1a
2 changed files with 2 additions and 1 deletions
|
|
@ -1281,7 +1281,7 @@ proc editDistance*(a, b: string): int {.noSideEffect,
|
||||||
|
|
||||||
# another special case:
|
# another special case:
|
||||||
if len1 == 1:
|
if len1 == 1:
|
||||||
for j in s..len2-1:
|
for j in s..s+len2-1:
|
||||||
if a[s] == b[j]: return len2 - 1
|
if a[s] == b[j]: return len2 - 1
|
||||||
return len2
|
return len2
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -78,6 +78,7 @@ assert(editDistance("prefix__hallo_suffix", "prefix__ha_suffix") == 3)
|
||||||
assert(editDistance("prefix__hallo_suffix", "prefix") == 14)
|
assert(editDistance("prefix__hallo_suffix", "prefix") == 14)
|
||||||
assert(editDistance("prefix__hallo_suffix", "suffix") == 14)
|
assert(editDistance("prefix__hallo_suffix", "suffix") == 14)
|
||||||
assert(editDistance("prefix__hallo_suffix", "prefix__hao_suffix") == 2)
|
assert(editDistance("prefix__hallo_suffix", "prefix__hao_suffix") == 2)
|
||||||
|
assert(editDistance("main", "malign") == 2)
|
||||||
|
|
||||||
assert "/1/2/3".rfind('/') == 4
|
assert "/1/2/3".rfind('/') == 4
|
||||||
assert "/1/2/3".rfind('/', 1) == 0
|
assert "/1/2/3".rfind('/', 1) == 0
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue