C# 正则表达式取值

wubaowang_ 2009-04-08 11:46:21

<table cellSpacing="0" cellPadding="2" width="682" border="0" style="WIDTH: 682px; HEIGHT: 324px">
<tr height="10">
<td colSpan="2"><FONT face="宋体"></FONT></td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px" width="88"><span class="style3">单位名称:</span></td>
<td style="HEIGHT: 20px" width="586">北京汇京鸿运汽车贸易发展有限公司</td>
</tr>
<TR>
<TD style="HEIGHT: 20px" width="88"><FONT face="宋体">服务类型:</FONT></TD>
<TD style="HEIGHT: 20px" width="586"><FONT face="宋体">经销商</FONT></TD>
</TR>
<TR>
<TD style="HEIGHT: 20px" width="88"><FONT face="宋体">级  别:</FONT></TD>
<TD style="HEIGHT: 20px" width="586"><FONT face="宋体">专营店</FONT></TD>
</TR>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">所在地区:</span></td>
<td style="HEIGHT: 20px">北京市 北京</td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">单位地址:</span></td>
<td style="HEIGHT: 20px">北京市丰台区丰益桥丰管路46号</td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">邮政编码:</span></td>
<td style="HEIGHT: 20px">100071</td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">服务电话:</span></td>
<td style="HEIGHT: 20px">010-63842828(服务),010-63846888(服务),63855857-251(销售)</td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">联系人:</span></td>
<td style="HEIGHT: 20px">郑东男</td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">电子邮件:</span></td>
<td style="HEIGHT: 20px">beijinghuijinghongyun@fengshenmotor.com</td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px"><span class="style3">网站地址:</span></td>
<td style="HEIGHT: 20px"></td>
</tr>
<tr height="30">
<td style="HEIGHT: 20px" vAlign="middle"><span class="style3">单位介绍:</span></td>
<td style="HEIGHT: 20px"></td>
</tr>
</table>


我想取出一个td中的内容,没有内容为空
谁能帮我看看啊.
...全文
388 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnnljs 2009-05-18
  • 打赏
  • 举报
回复
很好啊谢谢了
himoggy 2009-04-09
  • 打赏
  • 举报
回复
= =我还以为你要取内容
我匹配出来是这个……


单位名称:
北京汇京鸿运汽车贸易发展有限公司
服务类型:
经销商
级  别:
专营店
所在地区:
单位地址:
北京市丰台区丰益桥丰管路46号
邮政编码:
100071
服务电话:
010-63842828(服务),010-63846888(服务),63855857-251(销售)
联系人:
郑东男
电子邮件:
beijinghuijinghongyun@fengshenmotor.com
网站地址:
单位介绍:
waitwarwolf 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wackyboy 的回复:]
C# code
Regex re = new Regex("(?<=<td[^>]*>).*?(?=</td>)");
Match m = re.Match(input);
while(m.Success)
{
Console.WriteLine(m.Value);
Console.WriteLine("----Next Match----");
m = m.NextMatch();
}

/* 结果
<FONT face="宋体"></FONT>
----Next Match----
<span class="style3">单位名称:</span>
----Next Match----
北京汇京鸿运汽车贸易发展有限公司
----Next Match----
<span cla…
[/Quote]

很好,很强大!
wackyboy 2009-04-09
  • 打赏
  • 举报
回复

Regex re = new Regex("(?<=<td[^>]*>).*?(?=</td>)");
Match m = re.Match(input);
while(m.Success)
{
Console.WriteLine(m.Value);
Console.WriteLine("----Next Match----");
m = m.NextMatch();
}

/* 结果
<FONT face="宋体"></FONT>
----Next Match----
<span class="style3">单位名称:</span>
----Next Match----
北京汇京鸿运汽车贸易发展有限公司
----Next Match----
<span class="style3">所在地区:</span>
----Next Match----
北京市 北京
----Next Match----
<span class="style3">单位地址:</span>
----Next Match----
北京市丰台区丰益桥丰管路46号
----Next Match----
<span class="style3">邮政编码:</span>
----Next Match----
100071
----Next Match----
<span class="style3">服务电话:</span>
----Next Match----
010-63842828(服务),010-63846888(服务),63855857-251(销售)
----Next Match----
<span class="style3">联系人:</span>
----Next Match----
郑东男
----Next Match----
<span class="style3">电子邮件:</span>
----Next Match----
beijinghuijinghongyun@fengshenmotor.com
----Next Match----
<span class="style3">网站地址:</span>
----Next Match----

----Next Match----
<span class="style3">单位介绍:</span>
----Next Match----

----Next Match----
himoggy 2009-04-09
  • 打赏
  • 举报
回复
一定要用正则么?个人偏好用HtmlDocument做

正则,比较通用的话
用>\S*</
然后String.Remove(String.IndexOf("<"),String.Length-String.indexof("<")).Remove(0,1)

其他的等高手来答

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧