[英]how to get the last items in a row
我有像 Joe Doe Doe 这样的绳子,老板生意
我需要从这个字符串中取出姓氏、名字、父亲的名字和他的职位。
var str = orgRequ.ValueName.Replace(",", "").Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
string LastName = str.Length > 0 ? str[0] : "";
string Name = str.Length > 1 ? str[1] : "";
string FatherName = str.Length > 2 ? str[2] : "";
string Positions=string.Join(" ", str.Reverse().Take(str.Count() - 3).ToArray());
但是遇到了一个问题,最终位置写为 System.Linq.Enumerable + d__75`1 [System.Char] 而不是所有者业务。 在插入数据库之前,我需要再次反转 Positions ,如何使用最佳实践进行清理
因为您正在反转string Positions
的str
,所以您将获得Business Owner
而不是Owner Business
。
因此,要么您将 str[3] + str[4] 作为所有者业务的结果: string Positions = str[3] + " " + str[4];
或者用你的代码,你必须reverse
两个词(注意,快速和肮脏):
string Positions = string.Join(" ", str.Reverse().Take(str.Count() - 3).ToArray());
string output = "";
string[] splitStrings = Positions.Split(' ');
for (int i = splitStrings.Length - 1; i > -1; i--)
{
output = output + splitStrings[i] + " ";
}
Console.WriteLine("Result: " + output); //Owner Business
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.