这是我正在尝试锻炼分裂功能。
com
是从文本框传递的字符串,它会从文本中删除第一部分。
文本框中的文字正在以".fedex TYU-123 Time to pick up package"
然后,gms
是strip[]
数组的第一部分的一部分。
string format = com.Remove(0,1);
string[] strip = format.Split(new string[] { " " }, StringSplitOptions.None);
if (strip[0] == "gsm")
{
string carrier = strip[0];
string trackid = strip[1];
string message = strip[2];
}
strip[2]
仅包含"Time"
。我想以最后一部分返回:"Time to pick up package"
。
请记住,因为消息有时也会不同,所以我不想要特定的字符串搜索。
我怎样才能做到这一点?
答案 0 :(得分:3)
答案 1 :(得分:1)
我假设您希望所有单词都以第三个开头,请使用string.Join(" ", strip.Skip(2))
:
string[] strip = format.Split(new string[] { " " }, StringSplitOptions.None);
if (strip[0] == "gsm")
{
string carrier = strip[0];
string trackid = strip[1];
string message = string.Join(" ", strip.Skip(2)); //Time to pick up package
}
答案 2 :(得分:0)
你可以使用string.Split(char [],int32)方法,你可以给出最大值。要返回的分割字符串数。
所以:
format.Split(new[] {' '}, 3);
会做到这一点。