首页 > 代码库 > c#正则获取html里面a标签href的值

c#正则获取html里面a标签href的值

获取单个a中href的值:

 

string str = "<a href=http://www.mamicode.com/"http://www.itsve.com\">下载</a>";            string reg = @"<a[^>]*href=http://www.mamicode.com/([""‘])?(?<href>[^‘""]+)\1[^>]*>";            var item = Regex.Match(str, reg, RegexOptions.IgnoreCase);            Console.WriteLine(item.Groups["href"].Value);

 

 

获取多个a中的href的值:

string str = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">"                + "<html xmlns=\"http://www.w3.org/1999/xhtml\">"                + "<head>"                + "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"/>"                + "<meta content=\"怎样用c 正则表达式解析HTML中a 超链接 址 .NET技术 ASP.NET\" name=\"Keywords\"/>"                + "<meta content=\"是用c 正则表达式 是在后台 不是js正则表达式 是要获取a href属性值\" name=\"description\"/>"                + "<title>怎样用c#正则表达式解析HTML中a的超链接地址 - .NET技术 / ASP.NET</title>"                + "<li><a href=http://www.mamicode.com/"http://news.csdn.net/\" target=\"_blank\">资讯</a>|</li>"                + "<li><a href=http://www.mamicode.com/"http://mobile.csdn.net/\" target=\"_blank\">移动</a>|</li>"                + "<li><a href=http://www.mamicode.com/"http://cloud.csdn.net/\" target=\"_blank\">云计算</a>|</li>"                + "<link href=http://www.mamicode.com/"http://c.csdn.net/bbs/t/5/t5.css\" rel=\"stylesheet\" type=\"text/css\" />"                + "<link href=http://www.mamicode.com/"http://www.csdn.net/images/favicon.ico\" rel=\"SHORTCUT ICON\" />";            Regex reg = new Regex(@"(?is)<a[^>]*?href=http://www.mamicode.com/([‘""\s]?)(?<href>[^‘""\s]*)\1[^>]*?>");            MatchCollection match = reg.Matches(str);            foreach (Match m in match)            {                Response.Write(m.Groups["href"].Value + "<br/>");            }

 

//C#使用正则表达式获取HTML代码中a标签里包含指定后缀的href的值,表达式如下:Regex regImg = new Regex(@"(?is)<a[^>]*?href=http://www.mamicode.com/([‘""\s]?)(?<href>([^‘""\s]*\.doc)|([^‘""\s]*\.docx)|([^‘""\s]*\.xls)|([^‘""\s]*\.xlsx)|([^‘""\s]*\.ppt)|([^‘""\s]*\.txt)|([^‘""\s]*\.zip)|([^‘""\s]*\.rar)|([^‘""\s]*\.gz)|([^‘""\s]*\.bz2))\1[^>]*?>"

 

c#正则获取html里面a标签href的值