StringDistances.jl/src/StringDistances.jl

57 lines
960 B
Julia
Raw Normal View History

2015-10-22 18:12:44 +02:00
module StringDistances
2019-12-12 15:38:20 +01:00
using Distances
2021-04-21 17:57:50 +02:00
import StatsAPI: pairwise, pairwise!
2019-12-12 15:38:20 +01:00
2020-10-03 18:42:09 +02:00
include("distances/utils.jl")
include("distances/edit.jl")
include("distances/qgram.jl")
2020-11-12 06:13:14 +01:00
include("modifiers.jl")
2020-02-13 15:48:35 +01:00
include("normalize.jl")
2020-11-12 06:13:14 +01:00
include("pairwise.jl")
2020-07-19 21:37:49 +02:00
# Distances API
2020-11-09 02:05:14 +01:00
Distances.result_type(dist::StringDistance, s1::Type, s2::Type) = typeof(dist("", ""))
Distances.result_type(dist::StringDistance, s1, s2) = result_type(dist, typeof(s1), typeof(s2))
2020-11-09 02:05:14 +01:00
2020-11-12 06:13:14 +01:00
2020-10-03 18:42:09 +02:00
2015-10-22 18:12:44 +02:00
##############################################################################
##
## Export
##
##############################################################################
2019-12-12 15:38:20 +01:00
2015-11-04 18:40:30 +01:00
export
2019-12-12 20:48:52 +01:00
StringDistance,
Hamming,
2015-11-04 18:40:30 +01:00
Levenshtein,
DamerauLevenshtein,
Jaro,
2020-11-12 06:13:14 +01:00
JaroWinkler,
2019-08-17 18:57:35 +02:00
RatcliffObershelp,
2020-11-14 20:40:44 +01:00
AbstractQGramDistance,
2020-11-12 06:13:14 +01:00
QGramDict,
QGramSortedVector,
2020-11-14 20:40:44 +01:00
QGram,
2015-11-04 18:40:30 +01:00
Cosine,
Jaccard,
2015-11-05 16:51:32 +01:00
SorensenDice,
Overlap,
2020-11-10 16:12:28 +01:00
MorisitaOverlap,
NMD,
2015-11-04 18:40:30 +01:00
Partial,
TokenSort,
2015-11-06 16:47:15 +01:00
TokenSet,
2019-08-17 18:15:14 +02:00
TokenMax,
2019-12-12 20:48:52 +01:00
evaluate,
compare,
result_type,
2020-02-09 19:42:29 +01:00
qgrams,
findnearest,
2020-11-09 02:05:14 +01:00
pairwise,
pairwise!
2015-11-06 03:03:45 +01:00
end