lib/fuzzily/trigram.rb in fuzzily-0.1.0 vs lib/fuzzily/trigram.rb in fuzzily-0.2.0
- old
+ new
@@ -2,10 +2,17 @@
module Fuzzily
module String
def trigrams
normalized = self.normalize
- (0..(normalized.length - 3)).map { |index| normalized[index,3] }.uniq
+ number_of_trigrams = normalized.length - 3
+ trigrams = (0..number_of_trigrams).map { |index| normalized[index,3] }.uniq
+ end
+
+ def scored_trigrams
+ trigrams_ = self.trigrams
+ score = 32_768 / trigrams_.length
+ trigrams_.map { |t| [t, score] }
end
protected
# Remove accents, downcase, replace spaces and word start with '*',