The library(isub) implements a similarity measure between strings, i.e., something similar to the Levenshtein distance. This method is based on the length of common substrings.
?- isub('E56.Language', 'languange', true, D). D = 0.711348.
If Normalize is true
, isub/4 applies string normalization as
implemented by the original authors: Text1 and Text2 are mapped
to lowercase and the characters "._ " are removed. Lowercase
mapping is done with the C-library function towlower()
. In
general, the required normalization is domain dependent and is
better left to the caller. See e.g., unaccent_atom/2.