I used to have a function that handled name casing with names like

O'Brian
de Costella
van der Bildt
etc

handled correctly, but it was in a retired library and I cannot locate it any more

I see a few in here but they are only Camel Casing not names.

Does someone have a function they do not mind sharing?