You are fighting a "no win" battle. The possibilities are nearly limitless plus add the human typing error. The way most people do it is parse the input , use value lists or return validation error messages till you train the inputters,
One way i have handled the Last Name, First Name, Company name issue is by dual use fields.
First Name [blank for Company Names]
Last Name/Company Name [one field dual purpose]
Then i add a "show example" button that lets a user see...[ say a layout mailing address from his entry to verify that this is what he will see]
This has solve about 99% of my data entry problems.
Thank you Jim, I will certainly take your advice in the future.
The issue I have (and it's a big one :-)) is that the data I am given is in a format I can't change, which may explain why I'm going bald.
All the best
One way to minimize your hair loss is to create a separate FMP database or table to "learn" the exceptions that your inputters nomally do. You have listed a few exceptions to your script. I can give you a list of many more. The term "leaning program" has fallen out of popular use.
You use your scripts to get most properly separted and then when an exception is found, add that exception to a new record in you new DB. Pass the input data a second time through your parseing scipts that now have the newly "learned" exception. Then "Rinse and Repeat".
You will "little by little" build a list of exceptions that you can program a general script using that "learned" list.
JR SR II III IV Dr. INC. LLC. PPC. Rev, Mr. Miss. Ms. Ing. PA, PE. [ever growing]
You will still have to manually add the newly found exception to the list, but hair loss will go down from not having to reprogam your script.