文字列を取り、それを多数の項目に分割してから、配列内に格納するメソッドに取り組んでいます。次に、配列に 3 つ以上の項目が含まれているかどうかを確認し、含まれている場合は、配列内の特定の項目を対応する文字列に割り当てます。つまり、最初の項目を名に、最後の項目を姓に、その他すべての項目をミドルネームに割り当てます。
私の問題は、最初または最後の項目ではない配列内の各項目を取得し、それらを正しい順序で文字列に割り当てることに関連しています。以下では、name 配列内の各項目を取得し、結果をリストに割り当てて単一の文字列に変換しようとしましたが、うまくいきませんでした。私が探しているのは、この問題の解決策です。
public string SplitName(string text)
{
string forename;
string middlename;
string surname;
var name = text.Split(' ');
if (name != null)
{
if (name.Length > 2)
{
forename = name[0];
surname = name[name.Length - 1];
List<string> temp = new List<string>();
for (int i = 1; i < name.Length - 1; i++)
{
// Assign each item to middlename
}
text = string.Format("{0} {1} {2}", forename, middlename, surname);
}
}
else
{
text = "INVALID";
}
return text;
}