Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function string.levenshteinDistance( s1, s2 )
- if string.utf8len(s1) == 0 then return string.utf8len(s2) end
- if string.utf8len(s2) == 0 then return string.utf8len(s1) end
- if string.utf8sub(s1, -1, -1) == string.utf8sub(s2, -1, -1) then
- return string.levenshteinDistance( string.utf8sub(s1, 1, -2), string.utf8sub(s2, 1, -2) )
- end
- local a = string.levenshteinDistance( string.utf8sub(s1, 1, -2), string.utf8sub(s2, 1, -2) )
- local b = string.levenshteinDistance( string.utf8sub(s1, 1, -1), string.utf8sub(s2, 1, -2) )
- local c = string.levenshteinDistance( string.utf8sub(s1, 1, -2), string.utf8sub(s2, 1, -1) )
- if a > b then return b + 1 end
- if a > c then return c + 1 end
- return a + 1
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement