I have user’s firstname and lastname in one string, with space between
e.g.
John Doe
Peter Smithon
And now I want convert this string to two string – firstname and lastname
John Doe -> first = John, last = Doe
John -> first = John, last = “”
[space]Doe -> first = “”, last = Doe.
I am using next code
var fullname = "john Doe"
var last = fullname.replace(/^.*\s/, "").toUpperCase().trim(); // john
var first = fullname.replace(/\s.*$/, "").toUpperCase().trim(); // Doe
and this works well for two-word fullname. But if fullname has one word, then I have problem
var fullname = "john"
var last = fullname.replace(/^.*\s/, "").toUpperCase().trim(); // john
var first = fullname.replace(/\s.*$/, "").toUpperCase().trim(); // john
http://jsfiddle.net/YyCKx/
any ideas?
Use split + shift methods.
So in case of single word name it will give you expected result: