Это будет работать, если вы уверены, что у вас есть имя и фамилия.
string fullName = "Adrian Rules";
var names = fullName.Split(' ');
string firstName = names[0];
string lastName = names[1];
Обязательно проверьте длину names
.
names.Length == 0 //will not happen, even for empty string
names.Length == 1 //only first name provided (or blank)
names.Length == 2 //first and last names provided
names.Length > 2 //first item is the first name. last item is the last name. Everything else are middle names
Обновление
Конечно, это довольно упрощенный взгляд на проблему.Цель моего ответа - объяснить, как работает string.Split()
.Однако вы должны иметь в виду, что некоторые фамилии являются составными именами, такими как «Луис да Силва», как отмечает @AlbertEin.
Это далеко не простая проблема для решения.Некоторые предлоги (на французском, испанском, португальском и т. Д.) Являются частью фамилии.Вот почему @John Saunders спросил «на каком языке?».Джон также отметил, что префиксы (Mr., Mrs.) и суффиксы (Jr., III, MD) могут мешать.