Matts Name Parser
Ruby
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 3 commits ahead of mericson:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
spec
test
.document
.gitignore
LICENSE
README.rdoc
Rakefile
VERSION.yml
people.gemspec

README.rdoc

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

Copyright © 2009 Matthew Ericson. See LICENSE for details.