日期:2014-05-18 浏览次数:20897 次
string t = "<TD>201205010</TD><TD>20838193</TD><TD>好好商城</TD><TD>12-05-01</TD><TD>12-05-02</TD><TD>深圳分发部</TD><TD>盐田站</TD><TD>配送成功</TD><TD>12-05-03</TD><TD> </TD>" + "<TD> </TD><TD>0.00</TD><TD>广东深圳市盐田区中青路9号</TD><TD>1592008</TD><TD>彭小姐</TD><TD>0.94</TD><TD> 1</TD><TD>花都仓0</TD><TD>曾辉</TD>"; string pattern=@"<TD>.*?</TD>";//首先是得出每个TD里的值 Regex regex = new Regex(pattern,RegexOptions.IgnoreCase); MatchCollection mc = regex.Matches(t);//mc里放着所有<td> </td>内容 pattern = @"<[^>]*>";//这个正则表达式是取掉<td>,只留下<td>的内容 DataTable dt = new DataTable();//新建DataTable List<string> list=new List<string>();//将所有值存放到这个List中 foreach (Match m in mc) { list.Add(Regex.Replace(m.ToString(), pattern, "")); } for (int i = 0; i < mc.Count; i++) { //为DataTable创建列名,这里是1到19,在dataGridview引用的列名就是1-19,也可以自己取值 //如table有列名,应该将Columns依次赋值列名 dt.Columns.Add(new DataColumn(i.ToString(), typeof(string))); } //这里是一行数据就添加一行,一共多少行数据,可以根据<tr>的数量判断 dt.Rows.Add(dt.NewRow() ); //将值添加到dt.rows中,这样dataGridview就可以使用这个datable作为数据源了 for (int i = 0; i < list.Count; i++) { dt.Rows[0][i] = list[i]; }