Skip to content

threedaymonk/text

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A collection of text algorithms.

require 'text'
Text::Levenshtein.distance('test', 'test')
# => 0
Text::Levenshtein.distance('test', 'tent')
# => 1
Text::Levenshtein.distance('test', 'testing')
# => 3
Text::Levenshtein.distance('test', 'testing', 2)
# => 2
Text::Metaphone.metaphone('BRIAN')
# => 'BRN'

Text::Metaphone.double_metaphone('Coburn')
# => ['KPRN', nil]
Text::Metaphone.double_metaphone('Angier')
# => ['ANJ', 'ANJR']
Text::Soundex.soundex('Knuth')
# => 'K530'
Text::PorterStemming.stem('abatements')  # => 'abat'
white = Text::WhiteSimilarity.new
white.similarity('Healed', 'Sealed')   # 0.8
white.similarity('Healed', 'Help')     # 0.25

Note that some intermediate information is cached on the instance to improve performance.

The library has been tested on Ruby 1.8.6 to 1.9.3 and on JRuby.

  • Hampton Catlin (hcatlin) for Ruby 1.9 compatibility work

  • Wilker Lúcio for the initial implementation of the White algorithm

MIT. See COPYING.txt for details.

About

Collection of text algorithms. gem install text

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 8

Languages