• Stars
    star
    102
  • Rank 335,584 (Top 7 %)
  • Language
    Ruby
  • License
    Other
  • Created over 15 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Matts Name Parser

people

Parses names into parts. Loosely based on the Lingua-EN-NameParser Perl module.

How to install

sudo gem install people

How to use

require 'people'

np = People::NameParser.new

name = np.parse( "Matthew E Ericson" )
puts name[:parsed]
puts name[:orig]
puts name[:first]
puts name[:last]

If name successfully parses, name is set to true.

Available parts are :title, :first, :middle, :last, :suffix, :first2, :middle2, :title2, :suffix2, :orig, :match_type

By default, it will try to proper case names. If you want to leave the capitalization alone, pass :case_mode => ‘leave’ or for uppercase, ‘upper’.

np = People::NameParser.new( :case_mode => 'proper' )
np = People::NameParser.new( :case_mode => 'leave' )
np = People::NameParser.new( :case_mode => 'upper' )

If you have names like “John and Jane Doe”, pass :couples => true

np = People::NameParser.new( :couples => true, :case_mode => 'upper' )

name = np.parse( "John and Jane Doe" )
puts name[:first]
puts name[:first2]
puts name[:last]

Try it out online at people.ericson.net

Send suggestions to mericson at ericson dot net.

Copyright © 2009 Matthew Ericson. See LICENSE for details.