Distances between strings and nearest string suggestions.
Definition in file distances.hpp.
Go to the source code of this file.
#include <optional>
#include <string>
#include <string_view>
#include <type_traits>
Namespaces | |
namespace | utils |
Utilities. | |
Functions | |
std::size_t | utils::GetLevenshteinDistance (std::string_view view1, std::string_view view2) |
Returns the Levenshtein distance between two strings. | |
std::size_t | utils::GetDamerauLevenshteinDistance (std::string_view view1, std::string_view view2) |
Returns the Damerau-Levenshtein distance between two strings. | |
template<typename StringViews , typename DistanceFunc = std::size_t (*)( std::string_view, std::string_view)> | |
std::optional< std::string_view > | utils::GetNearestString (const StringViews &strings, std::string_view key, std::size_t max_distance, DistanceFunc distance_func=&utils::GetLevenshteinDistance) |
Returns a nearest string for a key from a bunch of strings. | |
template<typename StringViews > | |
std::string | utils::SuggestNearestName (const StringViews &strings, std::string_view key) |
Returns a suggestion for a key. | |