in reply to Split first and last names
The short answer is that it's not a solvable problem. See Falsehoods Programmers Believe About Names for why that is.
If you insist on storing data labelled as first name and last name then the best plan is to ask the person for those data items as separate fields (ie. change your web form).
In Section Seekers of Perl Wisdom