C#Winform提取string类型 html代码里的 tr td数据

<!DOCTYPEhtml><head><title>123</title></head><bodyclass="showmenu"><divclass="main"><... <!DOCTYPE html>
<head>
<title>123</title>
</head>
<body class="showmenu">
<div class="main">
<div style="padding:15px;">
<table class="table table-hover">
<thead class="navbar-inner">
<tr>
<th>订单号</th>
<th style="width:100px;">姓名</th>
<th style="width:80px;">电话</th>
<th style="width:80px;">支付方式</th>
<th style="width:80px;">配送方式</th>
<th style="width:50px;">运费</th>
<th style="width:50px;">总价</th>

<!-- <th style="width:50px;">类型</th>-->
<th style="width:50px;">状态</th>
<th style="width:150px;">下单时间</th>
<th style="width:120px; text-align:right;">操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>12132242</td>
<td>李四</td>
<td>13800000000</td>
<td><span class="label label-important">在线支付</span></td>
<td>已满38元,免邮费</td>
<td>0.00</td>
<td>86.7 元</td>
<!-- <td>虚拟</td>-->
<td>
<span class="label label-info">待收货</span> </td>
<td>2014-12-13 19:50:28</td>
<td style="text-align:right;"><a href="site.php?act=module&op=detail&id=169&name=shopping&do=order&weid=2">查看订单</a></td>
</tr>
<tr>
<td>12131774</td>
<td>小明</td>
<td>13413131515</td>
<td><span class="label label-important">在线支付</span></td>
<td>已满68元,免邮费</td>
<td>0.00</td>
<td>75.6 元</td>
<!-- <td>虚拟</td>-->
<td>
<span class="label label-info">待收货</span> </td>
<td>2014-12-13 18:16:17</td>
<td style="text-align:right;"><a href="site.php?act=module&op=detail&id=168&name=shopping&do=order&weid=2">查看订单</a></td>
</tr>
</tbody>
<!--tr>
<td></td>
<td colspan="3">

</html>
展开
 我来答
百度网友a1d4f2f
2014-12-17 · 超过102用户采纳过TA的回答
知道小有建树答主
回答量:241
采纳率:0%
帮助的人:192万
展开全部
用正则来提取。
using System;
using System.Runtime.InteropServices;
using System.Text.RegularExpressions;

namespace RegexTest
{
public class RegexTest
{
public void Test()
{
string input = @"<!DOCTYPE html>
<head>
<title>123</title>
</head>
<body class="showmenu">
<div class="main">
<div style="padding:15px;">
<table class="table table-hover">
<thead class="navbar-inner">
<tr>
<th>订单号</th>
<th style="width:100px;">姓名</th>
<th style="width:80px;">电话</th>
<th style="width:80px;">支付方式</th>
<th style="width:80px;">配送方式</th>
<th style="width:50px;">运费</th>
<th style="width:50px;">总价</th>

<!-- <th style="width:50px;">类型</th>-->
<th style="width:50px;">状态</th>
<th style="width:150px;">下单时间</th>
<th style="width:120px; text-align:right;">操作</th>
</tr>
</thead>
<tbody>
<tr>
<td>12132242</td>
<td>李四</td>
<td>13800000000</td>
<td><span class="label label-important">在线支付</span></td>
<td>已满38元,免邮费</td>
<td>0.00</td>
<td>86.7 元</td>
<!-- <td>虚拟</td>-->
<td>
<span class="label label-info">待收货</span> </td>
<td>2014-12-13 19:50:28</td>
<td style="text-align:right;"><a href="site.php?act=module&op=detail&id=169&name=shopping&do=order&weid=2">查看订单</a></td>
</tr>
<tr>
<td>12131774</td>
<td>小明</td>
<td>13413131515</td>
<td><span class="label label-important">在线支付</span></td>
<td>已满68元,免邮费</td>
<td>0.00</td>
<td>75.6 元</td>
<!-- <td>虚拟</td>-->
<td>
<span class="label label-info">待收货</span> </td>
<td>2014-12-13 18:16:17</td>
<td style="text-align:right;"><a href="site.php?act=module&op=detail&id=168&name=shopping&do=order&weid=2">查看订单</a></td>
</tr>
</tbody>
<!--tr>
<td></td>
<td colspan="3">

</html>";

string pattern = @"<td>([\s\S]+?)</td>";
RegexOptions options = RegexOptions.None;
Regex regex = new Regex(pattern, options);
MatchCollection matches = regex.Matches(input);

foreach (Match match in matches)
{
Console.WriteLine(match.Value);
}
}
}
}
追问
我也知道用正则。。。 主要是我不太会用 正则
追答
完善例子了。
Sxzy灬丨小柒
2014-12-17 · TA获得超过623个赞
知道小有建树答主
回答量:1223
采纳率:50%
帮助的人:276万
展开全部
能,比较麻烦. string.SubString();一点点截取
追问
你给我截一个例子看看呗。
追答

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fjkejian
2014-12-17 · 超过85用户采纳过TA的回答
知道小有建树答主
回答量:174
采纳率:0%
帮助的人:177万
展开全部
楼主别信楼下的,编程是个复杂活来着没有做不到的只有想不到的,其实你的要求对于框架来说就已经有对应的实现了。方法可以有多种,就看你想要哪种
1:用XML加载这些内容然后操作XML类就可以了。
2:我相信楼下的一定懂得XML序列化吧,如果你不懂可以了解下dataTable是如何序列成XML文件或从XML文件反序列化成DataTable类的。楼主这个建议你研究下。我想讲的是你如果了解这些那只要把<Table></Table>标签里的内容插入到一个新生成的XML文件然后反列化成DataTable这样你可以很自然的使用了。
3:那只是为了想提高自己,而采用自己写类分析的方式。当然要看你自己的功力如何。有些人可以写出比以上方法运行更快代码,而有些人则不定。只是个人认为如有讲错的地方请见谅。如果你想要用此方法可以回复,我会帮助你一步步实现,呵呵让你我都可以有点成就感。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式