I am looking for some code/add-on that will take any form of name in a single cell and split it into its components. (beyond what the text to columns functions are capable of, eg recognising III, the 3rd, Jr, Mr, Dr, different name orders and arrangements, recognise common first/sur names etc etc)

I thought this would be a common enough problem for there to be some (free) good software.

I have seen a few versions available for sale, but wanted personal recommendations.

I'll pay if it is necessary.

Thanks