Пример #1
0
 public WordSimilarityResolverDefault(
     ISimilarityResolver <char> characterSimilarityResolverForLevenstein,
     IMistakeBasedSimilarityResolver <Word> mistakeBasedResolver)
     : base(mistakeBasedResolver,
            new WordSimilarityResolverLevenstein(characterSimilarityResolverForLevenstein))
 {
 }
Пример #2
0
 public PhraseSimilarityResolver(
     IMistakeRepository <Phrase>?mistakesRepository    = null,
     Func <Phrase, Phrase, float?>?mistakeAlgorithm    = null,
     ISimilarityResolver <Word>?wordSimilarityResolver = null
     )
     : base(mistakesRepository, mistakeAlgorithm)
 {
     Algorithm = new LevenshteinAlgorithm <Phrase, Word>(wordSimilarityResolver ?? new WordSimilarityResolver());
 }
Пример #3
0
 public WordSimilarityResolver(
     IMistakeRepository <Word>?mistakesRepository           = null,
     Func <Word, Word, float?>?mistakeAlgorithm             = null,
     ISimilarityResolver <char>?characterSimilarityResolver = null
     )
     : base(mistakesRepository, mistakeAlgorithm)
 {
     Algorithm = new LevenshteinAlgorithm <Word, char>(characterSimilarityResolver ?? new CharacterSimilarityResolver());
 }
Пример #4
0
        public Simila(float threshold = .6f, ISimilarityResolver <string>?resolver = null)
        {
            if (resolver == null)
            {
                var wordSimilarityResolver = new WordSimilarityResolver(
                    characterSimilarityResolver: new CharacterSimilarityResolver(
                        mistakesRepository: new BuiltinCharacterMistakesRepository()
                        )
                    );

                Algorithm = new PhraseSimilarityResolver(wordSimilarityResolver: wordSimilarityResolver);
            }
            else
            {
                Algorithm = resolver;
            }

            Threshold = threshold;
        }
Пример #5
0
 public LevensteinAlgorithm(ISimilarityResolver <TElement> elementSimilarityResolver)
 {
     ElementSimilarityResolver = elementSimilarityResolver;
 }
 public WordSimilarityResolverLevenstein(ISimilarityResolver <char> elementSimilarityResolver)
     : base(elementSimilarityResolver)
 {
 }
 public PhraseSimilarityResolverLevenstein(ISimilarityResolver <Word> wordSimilarityResolver)
     : base(wordSimilarityResolver)
 {
 }