p

com.github.vickumar1981

stringdistance

package stringdistance

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. stringdistance
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait CosineAlgorithm extends StringDistanceAlgorithm

    A marker interface for the cosine similarity algorithm.

  2. class CosineSimilarityImplWrapper extends CosSimilarityImpl

    Jave Wrapper for cosine similarity.

  3. trait DiceCoefficientAlgorithm extends StringDistanceAlgorithm

    A marker interface for the dice coefficient algorithm.

  4. class DiceCoefficientImplWrapper extends DiceCoefficientImpl

    Jave Wrapper for dice coefficient similarity.

  5. trait DistanceAlgorithm[+T <: StringDistanceAlgorithm] extends AnyRef

    A type class to extend a distance method to StringDistanceAlgorithm.

  6. trait HammingAlgorithm extends StringDistanceAlgorithm

    A marker interface for the hamming distance algorithm.

  7. class HammingImplWrapper extends HammingImpl

    Jave Wrapper for hamming distance.

  8. trait JaccardAlgorithm extends StringDistanceAlgorithm

    A marker interface for a jaccard similarity algorithm.

  9. class JaccardImplWrapper extends JaccardImpl

    Jave Wrapper for jaccard similarity.

  10. trait JaroAlgorithm extends StringDistanceAlgorithm

    A marker interface for the jaro similarity algorithm.

  11. class JaroImplWrapper extends JaroImpl

    Jave Wrapper for jaro and jaro winkler similarity.

  12. trait JaroWinklerAlgorithm extends StringDistanceAlgorithm

    A marker interface for the jaro winkler algorithm.

  13. trait LevenshteinAlgorithm extends StringDistanceAlgorithm

    A marker interface for the levenshtein distance algorithm.

  14. class LevenshteinDistanceImplWrapper extends LevenshteinDistanceImpl

    Jave Wrapper for levenshtein distance.

  15. trait LongestCommonSeqAlorithm extends StringDistanceAlgorithm

    A marker interface for the longest common subsequence algorithm.

  16. class LongestCommonSeqWrapper extends LongestCommonSeqImpl

    Jave Wrapper for longest comment sequence.

  17. trait NGramAlgorithm extends StringDistanceAlgorithm

    A marker interface for the n-gram similarity algorithm.

  18. class NGramImplWrapper extends NGramImpl

    Jave Wrapper for n-gram similarity.

  19. trait OverlapAlgorithm extends StringDistanceAlgorithm

    A marker interface for the overlap similarity algorithm.

  20. class OverlapImplWrapper extends OverlapImpl

    Jave Wrapper for overlap similarity.

  21. trait ScorableFromDistance[+T <: StringDistanceAlgorithm] extends ScoringAlgorithm[T]

    A mix-in trait to extend a score method using the distance method to StringDistanceAlgorithm.

  22. trait ScoringAlgorithm[+T <: StringDistanceAlgorithm] extends AnyRef

    A type class to extend a score method to StringDistanceAlgorithm.

  23. trait StringDistanceAlgorithm extends AnyRef

    A marker interface for the string distance algorithm.

  24. trait StringDistanceImpl[A <: StringDistanceAlgorithm] extends AnyRef

    Defines implementation for StringDistanceAlgorithm by adding implicit definitions from DistanceAlgorithm, ScoringAlgorithm or WeightedScoringAlgorithm

  25. trait WeightedScoringAlgorithm[+A <: StringDistanceAlgorithm, B] extends AnyRef

    A type class to extend a score method with a 2nd typed parameter to StringDistanceAlgorithm.

Value Members

  1. implicit object CosSimilarityScore extends CosSimilarityImpl with WeightedScoringAlgorithm[CosineAlgorithm, String]

    Implicit definition of cosine similarity score for CosineAlgorithm.

  2. implicit object DiceCoefficientScore extends DiceCoefficientImpl with WeightedScoringAlgorithm[DiceCoefficientAlgorithm, Double]

    Implicit definition of dice coefficient score for DiceCoefficientAlgorithm.

  3. implicit object HammingDistance extends HammingImpl with DistanceAlgorithm[HammingAlgorithm] with ScorableFromDistance[HammingAlgorithm]

    Implicit definition of hamming distance for HammingAlgorithm.

  4. implicit object JaccardScore extends JaccardImpl with WeightedScoringAlgorithm[JaccardAlgorithm, Int]

    Implicit definition of jaccard score for JaccardAlgorithm.

  5. implicit object JaroScore extends JaroImpl with ScoringAlgorithm[JaroAlgorithm]

    Implicit definition of jaro score for JaroAlgorithm.

  6. implicit object JaroWinklerScore extends JaroImpl with WeightedScoringAlgorithm[JaroWinklerAlgorithm, Double]

    Implicit definition of jaro winkler score for JaroWinklerAlgorithm.

  7. implicit object LevenshteinDistance extends LevenshteinDistanceImpl with DistanceAlgorithm[LevenshteinAlgorithm] with ScorableFromDistance[LevenshteinAlgorithm]

    Implicit definition of levenshtein distance for LevenshteinAlgorithm.

  8. implicit object LongestCommonSeqDistance extends LongestCommonSeqImpl with DistanceAlgorithm[LongestCommonSeqAlorithm]

    Implicit definition of longest common subsequence for CosineAlgorithm.

  9. implicit object NGramScore extends NGramImpl with WeightedScoringAlgorithm[NGramAlgorithm, Int]

    Implicit definition of n-gram score for NGramAlgorithm.

  10. implicit object OverlapScore extends OverlapImpl with WeightedScoringAlgorithm[OverlapAlgorithm, Int]

    Implicit definition of overlap score for OverlapAlgorithm.

  11. object Strategy

    The Strategy object has two strategies(reg ex) expressions on which to split input.

    The Strategy object has two strategies(reg ex) expressions on which to split input. Strategy.splitWord splits a word into a sequence of characters. Strategy.splitSentence splits a sentence into a sequence of words.

  12. object StringConverter

    Object to extend operations to the String class.

    Object to extend operations to the String class.

    import com.github.vickumar1981.stringdistance.StringConverter._
    
    val cosSimilarity: Double = "hello".cosine("chello")
    val diceCoefficient: Double = "martha".diceCoefficient("marhta")
    val diceCoefficientWeighted: Double = "martha".diceCoefficient("marhta", 0.2)
    val hamming: Double = "martha".hamming("marhta")
    val jaccard: Double = "karolin".jaccard("kathrin")
    val jaro: Double = "martha".jaro("marhta")
    val jaroWinkler: Double = "martha".jaroWinkler("marhta")
    val levenshtein: Double = "martha".levenshtein("marhta")
    val ngramSimilarity: Double = "karolin".nGram("kathrin")
    val bigramSimilarity: Double = "karolin".nGram("kathrin", 2)
    val hammingDist: Int = "martha".hammingDist("marhta")
    val levenshteinDist: Int = "martha".levenshteinDist("marhta")
    val longestCommonSeq: Int = "martha".longestCommonSeq("marhta")
    val overlap: Double = "karolin".overlap("kathrin")
  13. object StringDistance

    Main class to organize functionality of different string distance algorithms

    Main class to organize functionality of different string distance algorithms

    import com.github.vickumar1981.stringdistance.StringDistance._
    
    val cosSimilarity: Double = Cosine.score("hello", "chello")
    val diceCoefficient: Double = DiceCoefficient.score("martha", "marhta")
    val diceCoefficientWeighted: Double = DiceCoefficient.score("martha", "marhta", 0.2)
    val hammingDist: Int = Hamming.distance("martha", "marhta")
    val hamming: Double = Hamming.score("martha", "marhta")
    val jaccard: Double = Jaccard.score("karolin", "kathrin")
    val jaro: Double = Jaro.score("martha", "marhta")
    val jaroWinkler: Double = JaroWinkler.score("martha", "marhta")
    val levenshteinDist: Int = Levenshtein.distance("martha", "marhta")
    val levenshtein: Double = Levenshtein.score("martha", "marhta")
    val longestCommonSubSeq: Int = LongestCommonSeq.distance("martha", "marhta")
    val ngramSimilarity: Double = NGram.score("karolin", "kathrin")
    val bigramSimilarity: Double = NGram.score("karolin", "kathrin", 2)
    val overlap: Double = Overlap.score("karolin", "kathrin")

Inherited from AnyRef

Inherited from Any

Ungrouped