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

本文关键字:文本 拆分 动态 | 更新日期: 2023-09-27 17:53:34

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

在文本框中输入

S。编号姓名年龄性别优惠状态客车座位/泊位/WL无

当前状态客车座位/泊位/WL无身份证类型/身份证号

1 AYAN PAL 40外螺纹CNF S7 49(LB(CNF S7 47(LB(

CS代码

            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);

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

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

您可以尝试像这样拆分

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++];
        ............