首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么添加数组到list并读出来?多谢

2013-09-11 
如何添加数组到list并读出来?谢谢本帖最后由 tylrr123 于 2013-09-10 22:44:25 编辑我想实现一个功能,使用

如何添加数组到list并读出来?谢谢
本帖最后由 tylrr123 于 2013-09-10 22:44:25 编辑 我想实现一个功能,使用正则表达式抽取出顾客的购物信息(有15位顾客的信息,每个顾客的信息包括 姓名、价格、数量、下单时间、款式 共5条元素),存入二维数组中,然后再读取出来。但是我的代码读取出来的数组全部都是一样的,怀疑是添加出了问题,请教应该怎么样修改呢?谢谢


.........以上代码省略
     string s = jieguo[0];
     List<string> jieguo2 = new List<string>(); \\声明一维数组jieguo2
     List<List<string>> jieguo3 = new List<List<string>>();  \\声明二维数组jieguo3
     string pattern = @"sellername\"""">(?<xing>(.*?))</span>.*?tb-rmb-num\"""">(?<rmb>([\d.]+))</em>.*?tb-amount\"""">(?<shuliang>(.*?))</td>.*?tb-time\"""">(?<time>([-\d\s:]+))</td>.*?<p>(?<kuanshi>(.*?))</p>"; \\定义正则表达式
     MatchCollection collection = Regex.Matches(s, pattern);\\ 抽出15位顾客的信息

            foreach (Match match in collection)  
            {
                GroupCollection gc = match.Groups;\\正则表达式的组group
                jieguo2.Clear();   \\清除数组内容
                jieguo2.Add(gc["xing"].Value);     \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["rmb"].Value);      \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["shuliang"].Value); \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["time"].Value);     \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["kuanshi"].Value);  \\添加元素到一维数组jieguo2

                jieguo3.Add(jieguo2); \\添加一维数组jieguo2 到 二维数组jieguo3

            }
            for (i = 0; i < jieguo3.Count; i++)
            {


                for (int j = 0; j < 5; j++)
                {
                    richTextBox1.Text = richTextBox1.Text + jieguo3[i][j] + "\r\n";
                    \\输出二维数组的元素
                }

                richTextBox1.Text = richTextBox1.Text + "---------------" + "\r\n";
            }




目前代码的输出结果:


 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------
 苏**柳 
19.9
1
2013-09-07 12:44:21
默认款式
---------------




请问应该怎么样修改呢?谢谢大伙指点
List二维数组


[解决办法]
jieguo2.Clear();  
=>
jieguo2 = new List<string>();
[解决办法]
把这句话放到foreach循环里:List<string> jieguo2 = new List<string>(); \\声明一维数组jieguo2

foreach (Match match in collection)  
            {
                List<string> jieguo2 = new List<string>(); \\声明一维数组jieguo2
                GroupCollection gc = match.Groups;\\正则表达式的组group
                jieguo2.Clear();   \\清除数组内容
                jieguo2.Add(gc["xing"].Value);     \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["rmb"].Value);      \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["shuliang"].Value); \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["time"].Value);     \\添加元素到一维数组jieguo2
                jieguo2.Add(gc["kuanshi"].Value);  \\添加元素到一维数组jieguo2
 
                jieguo3.Add(jieguo2); \\添加一维数组jieguo2 到 二维数组jieguo3
 
            }

热点排行