用户登录  |  用户注册
加入收藏设为首页会员中心我要投稿爽死小游戏平坦软件商城论坛RSS
当前位置:首页 > 教程资料 > 程序开发 > asp
日期:2011-04-20 06:32:17  来源:网络收集

asp.net正则表达式提取网址、标题、图片等

asp.net正则表达式提取网页网址、标题、图片实例以及过滤所有HTML标签实例(1)
2011-01-21 21:11

无论你用什么语言,正则表达式的处理方法都是非常灵活、高效的,尤其是对某些字符串的抓取、过滤方面,更显其优势。pWd平坦软件园

1、asp.net正则表达式提取网址、标题、图片等pWd平坦软件园

例如,有如下的字符串:pWd平坦软件园

<li><a href="http://www.webkaka.com/blog/archives/how-to-add-links-on-baidu-blog.html"   title="怎样在百度空间添加友情链接"><span class="article-date">[14/11]</span>怎样在百度空间添加友情链接</a></li>pWd平坦软件园

现在,需要提取 href 后面的网址,[]内的日期,和 链接的文字。pWd平坦软件园

asp.net的实现方式如下:pWd平坦软件园

string strHTML = "<li><a href=/http://www.webkaka.com/blog/archives/how-to-add-links-on-baidu-blog.html/   title=/"怎样在百度空间添加友情链接/"><span class=/"article-date/">[14/11]</span>怎样在百度空间添加友情链接</a></li>";pWd平坦软件园

string pattern = "http://([^//s]+)/".+?span.+?//[(.+?)//].+?>(.+?)<";pWd平坦软件园
Regex reg = new Regex( pattern, RegexOptions.IgnoreCase );pWd平坦软件园

MatchCollection mc = reg.Matches( strHTML );pWd平坦软件园
if (mc.Count > 0)pWd平坦软件园
{pWd平坦软件园
    foreach (Match m in mc)pWd平坦软件园
    {pWd平坦软件园
        Console.WriteLine( m.Groups[1].Value );pWd平坦软件园
        Console.WriteLine( m.Groups[2].Value );pWd平坦软件园
        Console.WriteLine( m.Groups[3].Value );pWd平坦软件园
    }pWd平坦软件园
}pWd平坦软件园

2、asp.net正则表达式删除HTML代码pWd平坦软件园

public static string NoHTML(string Htmlstring)  //替换HTML标记pWd平坦软件园
{pWd平坦软件园
    //删除脚本pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"<script[^>]*?>.*?</script>", "", RegexOptions.IgnoreCase);pWd平坦软件园
    //删除HTMLpWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"<(.[^>]*)>", "", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"([/r/n])[/s]+", "", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"-->", "", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"<!--.*", "", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(quot|#34);", "/"", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(amp|#38);", "&", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(lt|#60);", "<", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(gt|#62);", ">", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(nbsp|#160);", " ", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(iexcl|#161);", "/xa1", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(cent|#162);", "/xa2", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(pound|#163);", "/xa3", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&(copy|#169);", "/xa9", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"&#(/d+);", "", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring = Regex.Replace(Htmlstring, @"<img[^>]*>;", "", RegexOptions.IgnoreCase);pWd平坦软件园
    Htmlstring.Replace("<", "");pWd平坦软件园
    Htmlstring.Replace(">", "");pWd平坦软件园
    Htmlstring.Replace("/r/n", "");pWd平坦软件园
    Htmlstring = HttpContext.Current.Server.HtmlEncode(Htmlstring).Trim();pWd平坦软件园
    return Htmlstring;pWd平坦软件园
}pWd平坦软件园

pWd平坦软件园

[]

收藏: 我要收藏

作者:lploveme
阅读统计:[] [返回页首] [打 印]

文章评论共有条评论 评论内容只代表网友观点,与本站立场无关!

评论人 评论内容

评论时间

用户名: 密码:
验证码: 匿名发表
Copyright © 2009-2010 FLATWS.CN. All Rights Reserved .