= taxamatch_rb Taxamatch_Rb is a ruby implementation of Taxamatch algorithms developed by Tony Rees: http://www.cmar.csiro.au/datacentre/taxamatch.htm The purpose of Taxamatch gem is to facilitate fuzzy comparison of two scientific name renderings to find out if they actually point to the same scientific name. tm = Taxamatch::Base.new tm.taxamatch('Homo sapien', 'Homo sapiens') #returns true tm.taxamatch('Homo sapiens Linnaeus', 'Hommo sapens (Linn. 1758)') #returns true tm.taxamatch('Homo sapiens Mozzherin', 'Homo sapiens Linnaeus') #returns false Taxamatch_Rb is compatible with ruby versions 1.8.7 and 1.9.1 and higher == Installation sudo gem install dimus-taxamatch_rb --source http://gems.github.com or sudo gem sources -a http://gems.github.com #(you only have to do this once) sudo gem install dimus-taxamatch_rb == Usage require 'rubygems' #not needed for ruby > 1.9.1 require 'taxamatch_rb' tm = Taxamatch::Base.new * compare full scientific names tm.taxamatch('Hommo sapiens L.', 'Homo sapiens Linnaeus') * preparse names for the matching (necessary for large databases of scientific names) p = Taxamatch::Parser.new parsed_name1 = p.parse('Monacanthus fronticinctus Günther 1867 sec. Eschmeyer 2004') parsed_name2 = p.parse('Monacanthus fronticinctus (Gunther, 1867)') * compare preparsed names tm.taxamatch_preparsed(parsed_name1, parsed_name2) * compare genera tm.match_genera('Monacanthus', 'MONOCANTUS') * compare species tm.match_species('fronticinctus', 'frontecinctus') * compare authors and years Taxamatch::Authmatch.authmatch(['Linnaeus'], ['L','Muller'], [1786], [1787]) You can find more examples in spec section of the code == Copyright Copyright (c) 2009 Dmitry Mozzherin. See LICENSE for details.