正则表达式获得TD表格标签

paleyyang 2008-12-24 10:55:00
<TD vAlign=top class="td7">

<TABLE width="98%" border="1" cellpadding="2" cellspacing="0">
<TR height="19">
<TD height="19" width="72">品种 </TD>
<TD width="86">规格 </TD>
</TR>
</TABLE>

</TD>

Regex reLink = new Regex("<TD vAlign=top class=\"td7\">([\\s\\S]*?)</TD>");


怎么获得中间的这个TABLE。因为这个正则表达式。一匹配就会获得与其最近的</TD>.红色颜色标注。各位有没有办法呐。
谢谢各位高人了。顺便学习。呵呵。
...全文
164 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
(<TD vAlign=top class=\"td7\">(<TABLE[\\s\\S]*?</TABLE>)</TD>)|(<TD vAlign=top class=\"td7\">(((?!TABLE)[\\s\\S])*?)</TD>)
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
大小写的问题,你先全部都ToLower()就行啦~
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
(<TD vAlign=top class=\"td7\">(<TABLE[\\s\\S]*?</TABLE>)</TD>)|(<TD vAlign=top class=\"td7\">(((?!TABLE)[\\s\\S]))</TD>)
paleyyang 2008-12-24
  • 打赏
  • 举报
回复
也是。太弄人了。重新整理下看。谢呐兄弟。
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
那你要分是table和不是table这两种情况,因为不是table时,不会有这种问题~
paleyyang 2008-12-24
  • 打赏
  • 举报
回复
忘了说明一点<TD vAlign=top class="td7">这个中间有时候是表格,有时候是文图,有时候这中间这个table是大小字母,
有时候table是大写字母,然后TD是小写,有时候会反过来 </TD>

这两天在弄信息抓取,标签的不规范抓信息真麻烦。。。
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
少了半个括号~
Regex reLink = new Regex(@"(?<=<TD vAlign=top class=\"td7\">)(<TABLE[\s\S]*?</TABLE>)(?=</TD>)"); 
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
有点问题,用环视,先匹配<table>,在看两边是不是class=td7的td~

Regex reLink = new Regex(@"(?<=<TD vAlign=top class=\"td7\">)(<TABLE[\s\S]*?</TABLE>)(?=</TD>"); 
magicbacon 2008-12-24
  • 打赏
  • 举报
回复
Regex reLink = new Regex(@"(?<=<TD vAlign=top class="td7">)(<TABLE[\s\S]*?</TABLE>) (?=</TD>"); 

62,269

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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