aeshirey / NameParserSharp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NameParserSharp

Based upon nameparser 0.36, NameParserSharp is a C# library that parses a human name into constituent fields Title, First, Middle, Last, Suffix, and Nickname from the HumanName class. For example:

var jfk = new HumanName("president john 'jack' f kennedy");

// person.Title == "president"
// person.First == "john"
// person.Middle == "f"
// person.Last == "kennedy"
// person.Nickname == "jack"

var jfk_alt = new HumanName("kennedy, president john (jack) f");

Assert.IsTrue(jfk == jfk_alt);

NameParserSharp implements the functionality of the Python project on which it is based in a C# idiomatic way. It also,

  • eliminates nearly all regular expressions for efficiency
  • adds unit tests
  • improves nickname handling to expand delimiters: John (Jack) Torrence == John 'Jack' Torrence == John "Jack" Torrence
  • parses out multiple names from a single string as you might expect, as in mr john and mrs jane doe

NameParserSharp is available as a NuGet package: Install-Package NameParserSharp

About

License:GNU Lesser General Public License v2.1


Languages

Language:C# 100.0%