Я бы использовал для этого регулярное выражение, чтобы входные данные могли быть незначительными (например, «Смит, Джон», «Смит, Джон», «Смит, Джон» или «Смит, Джон»)
Вы можете сделать что-то подобное для regexp "\ w ([az] +) \ w", и тогда фамилия будет вашим первым совпадением, а имя будет вашим вторым совпадением.