.NET用正则表达式从HTML中提取信息

原创 2006年06月02日 15:56:00

Regex aRegex = new Regex("</?a[^>]*>");
string content = @"<table border=0 cellspacing=0 cellpadding=0 width=100% ><tr><td width=6></td>
  <td width='5' style='line-height:20pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.29,23.1247)' title='东山总站2'> 东山总站2 </a></td>

<td width='5' style='line-height:40pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.283,23.1275)' title='中山医站2'> 中山医 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.28,23.1295)' title='烈士陵园站'> 烈士陵园 </a></td>

<td width='5' style='line-height:40pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.272,23.1296)' title='大东门站2'> 大东门 </a></td>

<td width='5' style='line-height:40pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.27,23.1294)' title='农讲所站1'> 农讲所 </a></td>

<td width='5' style='line-height:40pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.266,23.1262)' title='文德路站2'> 文德路 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.264,23.1237)' title='北京路口站'> 北京路口 </a></td>

<td width='5' style='line-height:80pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.266,23.1184)' title='南关站'> 南关 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.262,23.1168)' title='海珠广场(侨光东)站'> 海珠广场 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.252,23.1129)' title='爱群大厦站'> 爱群大厦 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.242,23.1115)' title='六二三路站1'> 六二三路 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.238,23.112)' title='市中医院站'> 市中医院 </a></td>

<td width='5' style='line-height:20pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.231,23.1023)' title='芳村隧道口站'> 芳村隧道口 </a></td>

<td width='5' style='line-height:40pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.229,23.0969)' title='花地湾站'> 花地湾 </a></td>

<td width='5' style='line-height:20pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.226,23.0924)' title='芳村合兴苑站'> 芳村合兴苑 </a></td>

<td width='5' style='line-height:26pt;'>东漖北路</td>

<td width='5' style='line-height:80pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.222,23.0872)' title='汾水站'> 汾水 </a></td>

<td width='5' style='line-height:40pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.224420213932,23.0857201443167)' title='浣花路站'> 浣花路 </a></td>

<td width='5' style='line-height:26pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.229,23.0829)' title='芳村客运站'> 芳村客运 </a></td>

<td width='5' style='line-height:20pt;'><a class='linesta' href='javascript:OpenStatiomMapWin(113.223,23.0787)' title='龙溪大道东(教师新村)站'> 龙溪大道东 </a></td>

<td width='5' style='line-height:16pt;'>芳村花园总站</td>
    </table>";

content = aRegex.Replace(content, "");
Regex htmlRegex = new Regex(@"<td[^>]*>(?<Content>[^<]*)</td>");

MatchCollection mc = htmlRegex.Matches(content);
foreach (Match m in mc)
{
Console.WriteLine(m.Groups["Content"].Value);
}

运行结果:
 东山总站2
 中山医
 烈士陵园
 大东门
 农讲所
 文德路
 北京路口
 南关
 海珠广场
 爱群大厦
 六二三路
 市中医院
 芳村隧道口
 花地湾
 芳村合兴苑
东漖北路
 汾水
 浣花路
 芳村客运
 龙溪大道东
芳村花园总站

基本思路是先把<a标签全部去掉,然后只获得<td></td>里面的内容
都是正则表达式的基本用法,哪个方法不懂参考MSDN中System.Text.RegularExpressions命名空间

正则表达式提取html内容

很多时候我们想从一段html中找到需要的。 比如有一段html Code Code highlighting produced by Actipro CodeHighlighter ...
  • wustzbq0713
  • wustzbq0713
  • 2015年06月07日 21:57
  • 352

.net(C#)从html中提取中文字_正则表达式

using System.Text.RegularExpressions;        private string StripHT(string strHtml)  //从html中提取纯文...
  • CsethCRM
  • CsethCRM
  • 2014年12月17日 12:51
  • 1956

Java正则表达式提取html纯文本

做内容的大家都知道,从html中直接提取纯文本是一个非常大的问题。现将我做的正则匹配贴上: import java.util.regex.Matcher; import java.util.reg...
  • w_j_w2010
  • w_j_w2010
  • 2015年11月24日 16:33
  • 1907

常用正则表达式爬取网页信息及分析HTML标签总结

见链接 https://yq.aliyun.com/articles/26026摘要: 这篇文章主要是介绍Python爬取网页信息时,经常使用的正则表达式及方法。它是一篇总结性文章,实用性比较大,主...
  • chaowanghn
  • chaowanghn
  • 2017年02月05日 09:33
  • 2583

取出文本中的html代码,利用正则表达式

//这是获取纯文本的功能 String htmlStr = model.getContent(); //含html标签的字符串,model.getContent()是输入的文本 ...
  • qq_28483283
  • qq_28483283
  • 2016年03月30日 16:41
  • 2640

正则表达式提取html标签里的内容

public static void asdf() { var strJson = @"123123123123111566051231231231231233...
  • qq373591361
  • qq373591361
  • 2016年08月24日 15:32
  • 3502

正则表达式 抓取html中的邮箱

package regular; import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoun...
  • mexican_jacky
  • mexican_jacky
  • 2011年10月12日 16:00
  • 915

提取Html内容中的所有图片信息

源码如下protected ArrayList  GetAList(string HtmlContent)  {   try   {    ArrayList arr = new ArrayList(...
  • alex0326
  • alex0326
  • 2007年08月02日 09:23
  • 1326

利用正则表达式抽取网页信息

import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; ...
  • wlchn
  • wlchn
  • 2015年08月11日 09:54
  • 348

Python---对html文件内容进行搜索取出特定URL地址字符串,保存成列表,并使用每个url下载图片,并保存到硬盘上,使用正则re

Python—对html文件内容进行搜索取出特定URL地址字符串,保存成列表,并使用每个url下载图片,并保存到硬盘上,正则re 参考:http://blog.csdn.net/xwbk12/art...
  • xwbk12
  • xwbk12
  • 2018年01月09日 23:16
  • 103
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:.NET用正则表达式从HTML中提取信息
举报原因:
原因补充:

(最多只允许输入30个字)