Skip to content

mehcode/node-another-name-parser

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

another-name-parser

Here's yet another name parsing node.js library. It'll take a personal name and returns a prefix (title), first (or given name), middle (or initial), last (or family name), and suffix. It's designed for US English but could be useful elsewhere. It's inspired by a SQL script a colleague pulled together long ago combined with inspiration from a few other libraries.

NPM

Installation

Via npm

$ npm install another-name-parser

Usage

var parser = require('another-name-parser');

var name = parser('Commissioner James "Jim" W. Gordon, Sr.');
// → { prefix: 'Commissioner',
//     first: 'James',
//     middle: 'W.',
//     last: 'Gordon',
//     suffix: 'Sr.',
//     original: 'Commissioner James "Jim" W. Gordon, Sr.' }

Features

  • Handles many common prefixes/titles
  • Retains . that appear in the original name (Dr.Dr., PhDPhD)
  • Recognizes common compound first names (Mary Jo, Juan Carlos, etc.)
  • Recognizes common compound last name prefixes (St., Mac, Bin, etc.)
  • Recognizes Last Name, First Name order
  • Ignores quoted or parenthesized nicknames (Catherine "Cathy" SmithCatherine Smith, James (Jim) Von TrappJames Von Trapp)

Tests

Dependencies: grunt-cli

npm install -g grunt-cli
npm test

TODO

  • Handle multiple names, e.g, Jim & Mark Anderson
  • Handle likely company names (maybe)

Acknowledgements

  • My former colleague and whomever he got his original script from
  • Some of the test cases and compound lastname prefixes came from the humanname module

License

MIT License

Author

Matt Klaber

About

Yet another node.js name parser (prefix, first, middle, last, and suffix)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%