This uses the list of known family name prefixes to identify the correct family name in order to split a person's full name into individual parts. Note that this does not attempt to deal with every honorifics and post-nominal letters. This however supports more common honorific (ie. Mr., Ms., Mrs., etc.) and suffixes (ie. Jr., Sr., I, II, III, etc.).
This is useful for decomposing names entered into a single field before storing the data or for converting existing data that uses full names into name parts.
The following regex splits the name into 8 identifiable parts: