Or you could use pre-packaged software to do it for you. I've used ParseRat <http://www.guysoftware.com/parserat.htm> for parsing report output and it worked really well - although the interface is getting extremely dated. Haven't tried it for names - but it would be way easier than reinventing the wheel....
Colin -----Original Message----- From: Bill Haskett As usual, one has to ask if the complexities involved in managing all potentialities ensures that the simplest, and by far the most usual, scenarios are at best difficult to implement. :-( Bill ----- Original Message ----- *From:* symeon > You need to do a proper lexical analysis in order to work these out > > For example > > Input : Dean Foster > Lex: title word > > Input: Dean Reginald McGraw > Lex: title word word > > Then set rules to say a lex of "title word" is probable worked out as > "forename surname" and a lex of "title word word" is probably "title > forename surname" you can assign probabilities against these and build > some self learning in. > > It is a whole massive topic. > > -----Original Message----- > From: Mecki Foerthmann > > And the list goes on and on and... > That's why free form names are an absolute pain and should be avoided. > It's so much easier to have Title, First Name(s), Last Name(s) fields in the > input screen and keep them as separate attributes. > You never get it 100% right. > In your list take Dean or Prince for instance - they could be first names > and not titles at all. > A colleague of mine tried a last name upper to lower case conversion > including Irish and Scottish names and out of Machine Co it made MacHine Co. > And don't even ask what happened to last names starting with O.:-) > > > On 14/12/2011 01:02, Charlie Noah wrote: >> Great start, but here is a longer list, although still nowhere near >> complete: >> >> Prefixes >> >> Code Description >> 1st Lt First Lieutenant >> Adm Admiral >> Atty Attorney >> Brother Brother (religious) >> Capt Captain >> Chief Chief >> Cmdr Commander >> Col Colonel >> Dean University Dean (includes Assistant and Associate) >> Dr Doctor (Medical or Educator) >> Elder Elder (religious) >> Father Father (religious) >> Gen General >> Gov Governor >> Hon Honorable (Cabinet Officer, Commissioner, Congressman, Judge, >> etc.) >> Lt Col Lieutenant Colonel >> Maj Major >> MSgt Major/Master Sergeant >> Mr Mister >> Mrs Married Woman >> Ms Single or Married Woman >> Prince Prince >> Prof Professor (includes Assistant and Associate >> Rabbi Rabbi (religious) >> Rev Reverend (religious) >> Sister Sister (religious) >> >> Suffixes >> >> Code Description >> II The Second >> III The Third >> IV The Fourth >> V The Fifth >> CPA Certified Public Accountant >> DDS Doctor of Dental Medicine >> Esq Esquire >> JD Jurist Doctor >> Jr Junior >> Jnr Junior (British) >> LLD Doctor of Laws >> MD Doctor of Medicine >> PhD Doctorate >> Ret Retired from Armed Forces >> RN Registered Nurse >> RPh Registered Pharmacist >> Sr Senior >> Snr Senior (British) >> DO Doctor of Osteopathy >> >> Perhaps others can add more to the list. >> >> Regards, >> Charlie Noah >> >> Tiny Bear's Wild Bird Store >> "Everything For The Backyard Bird Enthusiast, Except For The Birds" >> Info, Forum: http://www.TinyBearMarketing.com >> Store: http://Stores.TinyBearMarketing.com >> >> >> On 12-13-2011 5:12 PM, Wjhonson wrote: >>> 0044: SUFFIXES = ",JR,SR,MD,III," >>> 0045: S.NAME = DCOUNT(UM.NAME,' ') >>> 0046: LAST.WORD.IN.NAME = FIELD(UM.NAME,' ',S.NAME) >>> 0047: IF INDEX(SUFFIXES,",":LAST.WORD.IN.NAME:",",1) THEN >>> 0048: LAST.NAME = FIELD(UM.NAME,' ',S.NAME-1) >>> 0049: END ELSE >>> 0050: LAST.NAME = LAST.WORD.IN.NAME >>> 0051: END >>> 0052: PREFIXES = ',DR,MR,MS,MISS,MRS,' >>> 0053: FIRST.WORD.IN.NAME = FIELD(UM.NAME,' ',1) >>> 0054: IF INDEX(PREFIXES,",":FIRST.WORD.IN.NAME:",",1) THEN >>> 0055: FIRST.NAME = FIELD(UM.NAME,' ',2) >>> 0056: END ELSE >>> 0057: FIRST.NAME = FIRST.WORD.IN.NAME >>> 0058: END _______________________________________________ U2-Users mailing list [email protected] http://listserver.u2ug.org/mailman/listinfo/u2-users
