Levenshtein distance methods.
NOTE To use Levenshtein, you must explicitly import it with require "levenshtein"
Computes the levenshtein distance of two strings.
Finds the best match for name among strings added within the given block.
Finds the best match for name among strings provided in all_names.
Computes the levenshtein distance of two strings.
require "levenshtein"
Levenshtein.distance("algorithm", "altruistic") # => 6
Levenshtein.distance("hello", "hallo") # => 1
Levenshtein.distance("こんにちは", "こんちは") # => 1
Levenshtein.distance("hey", "hey") # => 0 Finds the best match for name among strings added within the given block. tolerance can be used to set maximum Levenshtein distance allowed.
require "levenshtein"
best_match = Levenshtein.find("hello") do |l|
l.test "hulk"
l.test "holk"
l.test "halka"
l.test "ello"
end
best_match # => "ello" Finds the best match for name among strings provided in all_names. tolerance can be used to set maximum Levenshtein distance allowed.
require "levenshtein"
Levenshtein.find("hello", ["hullo", "hel", "hall", "hell"], 2) # => "hullo"
Levenshtein.find("hello", ["hurlo", "hel", "hall"], 1) # => nil
© 2012–2026 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.19.0/Levenshtein.html