日期:2014-05-18  浏览次数:20816 次

问个比较难的正则,vbScript格式的
VBScript code

<a href="http://WWW.AAA.COM/A.htm" target="_blank"><img src="http://www.ccc.net/site_logo/media.gif" border="0" alt="合作媒体" /></a> <br />
<a href="http://www.ddd.net/" target="_blank">[<b>天启-独立网店</b>]</a><br/> 
<a href="http://bbs.kkk.com/" target="_blank">中中社区</a><br/>
<a href="http://www.it33363.org/" target="_blank"><font color=red>☆</font><font fize=2>天龙教育网</font></a><br/> 


我希望一次过用vbScript的正则提取出:
1、 
(1)链接部分:http://WWW.AAA.COM/A.htm (2)内容部分:(图片链接):http://www.ccc.net/site_logo/media.gif  


(1)链接部分:http://www.ddd.net (2)内容部分(纯文字):[天启-独立网店]  


(1)链接部分:http://bbs.kkk.com (2)内容部分(纯文字):中中社区 

4
(1)链接部分:http://www.it33363.org/ (2)内容部分(纯文字):☆天龙教育网
并且文字部分是可以过滤掉那些加粗、字体样式、大小之类的html标签的,纯文字即可。

------解决方案--------------------
有点难度!

------解决方案--------------------
没有 学过 VBSCRIPT;

会 JAVASCRIPT:

如果让我做的话:

第一步:解析 链接部分 和 内容部分(比较粗糙)
href="(.*)".*>(.*)</a>

第二步:具体解析 内容部分
 根据 2 中情况,如果有 连接地址 取 地址
正则: src="(.*)"\s+border
 如果没有地址的话,取文本;
正则: 过滤 html 标记 ,
 /// <summary>
/// 移除HTMl 标记
/// </summary>
/// <param name="Html"></param>
/// <param name="RegStr"></param>
/// <returns></returns>
public static string Remove(string Html)
{
string regesstr = "<.*?>";
return Regex.Replace(Html, regesstr, string.Empty, RegexOptions.IgnoreCase);
}
得到纯文本。