正则表达式 怎么提取网页的信息?
求大神帮忙,看了一天了,网页是这个:<tr><thclass="th51"align="left"valign="top"style="border-color:#000...
求大神帮忙,看了一天了,网页是这个:
<tr><th class="th51" align="left" valign="top" style="border-color:#000; border-width: 1px 0px 0px 1px; border-style: solid"><nobr>Name</nobr></th>
<td class="td51" style="border-color:#000; border-width: 1px 1px 0px 1px; border-style: solid"><div style="width:555px;overflow-x:auto;overflow-y:hidden"><div style="width:555px;overflow-x:auto;overflow-y:hidden">Nadide (JAN/USAN/INN);<br>
Nicotinamide adenine dinucleotide<br>
</div></div></td></tr>
怎么把 Nadide (JAN/USAN/INN)和Nicotinamide adenine dinucleotide 提取出来? 展开
<tr><th class="th51" align="left" valign="top" style="border-color:#000; border-width: 1px 0px 0px 1px; border-style: solid"><nobr>Name</nobr></th>
<td class="td51" style="border-color:#000; border-width: 1px 1px 0px 1px; border-style: solid"><div style="width:555px;overflow-x:auto;overflow-y:hidden"><div style="width:555px;overflow-x:auto;overflow-y:hidden">Nadide (JAN/USAN/INN);<br>
Nicotinamide adenine dinucleotide<br>
</div></div></td></tr>
怎么把 Nadide (JAN/USAN/INN)和Nicotinamide adenine dinucleotide 提取出来? 展开
2个回答
展开全部
用正则表达式要灵活运用,对于网页分析来说,通常html语言是无用的,这时候我们要先把标签过滤掉再进行后续处理。html标签有一个最明显的特征,就是以"<"开始,以">"结束,依此条件,我们先写表达式过滤HTML标签
string pattern="<[a-zA-Z]+[1-7]*[ ]+?>"
这是C#的正则,我解释一下,[a-zA-Z]+,html标签必定以英文字母开头,这没疑问
[1-7]*,对于<h>标签来说,有可能为h1,h2,...h7
标签后面必须为空白字符,我用了[ ]代替,不知道你用什么语言,空白字符代表符号是什么,你了解就行了。
然后到了关闭标签。
这个表达式对于你说的这个网页源码是匹配的。至于更多,一般是要考虑到<Head>标签,<script>标签的,最好能做一个html解析,虽然不是什么高段位的课题,但也需要精通html和桌面编程中的字符正则等技术。
string pattern="<[a-zA-Z]+[1-7]*[ ]+?>"
这是C#的正则,我解释一下,[a-zA-Z]+,html标签必定以英文字母开头,这没疑问
[1-7]*,对于<h>标签来说,有可能为h1,h2,...h7
标签后面必须为空白字符,我用了[ ]代替,不知道你用什么语言,空白字符代表符号是什么,你了解就行了。
然后到了关闭标签。
这个表达式对于你说的这个网页源码是匹配的。至于更多,一般是要考虑到<Head>标签,<script>标签的,最好能做一个html解析,虽然不是什么高段位的课题,但也需要精通html和桌面编程中的字符正则等技术。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询