在文本框中拆分动态文本c#

时间:2016-07-01 06:40:47

标签: c# substring

  

用户将在单个文本框中输入他的详细信息,如下所示

     

文本框中的输入

     

S上。编号名称年龄性别特许状态教练座位/泊位/ WL否

     

现状教练座位/泊位/ WL无身份证号码/身份证号码

     

1 AYAN PAL 40公CNF S7 49(LB)CNF S7 49(LB)

CS CODE

            int indexof1 = strMain.IndexOf("1   ");
            int indexof40 = strMain.IndexOf("40 ");
            int indexofstts = strMain.IndexOf("Male     ");
            int effectiveindexof1 = indexof1 + "1   ".Length;
            int effectiveindexof40 = indexof40 + "40    ".Length;
            string pname = strMain.Substring(effectiveindexof1,indexof40-effectiveindexof1);

我使用子字符串,但在这里没有帮助,因为用户提供的所有信息都是动态的

1 个答案:

答案 0 :(得分:0)

您可以尝试将其拆分为

var input = "1 AYAN PAL 40 Male CNF S7 49 (LB) CNF S7 49 (LB)";
var fields = input.Split(' ');

然后只需像这样访问每个元素

string id = fields[0];
string name = fields[1];
.....

修改:不同的字数

        var fullName = string.Empty;
        int i = 0;
        int number = 0;
        var id = fields[i++];
        while (!int.TryParse(fields[i], out number))
        {
            fullName += fields[i++] + " ";
        }
        fullName = fullName.TrimEnd();
        var age = fields[i++];
        var gender = fields[i++];
        ............