获取单个a中href的值:
string str = "<a href="http://www.itsve.com">下载</a>"; string reg = @"<a[^>]*href=([""'])?(?<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://news.csdn.net/" target="_blank">资讯</a>|</li>" + "<li><a href="http://mobile.csdn.net/" target="_blank">移动</a>|</li>" + "<li><a href="http://cloud.csdn.net/" target="_blank">云计算</a>|</li>" + "<link href="http://c.csdn.net/bbs/t/5/t5.css" rel="stylesheet" type="text/css" />" + "<link href="http://www.csdn.net/images/favicon.ico" rel="SHORTCUT ICON" />"; Regex reg = new Regex(@"(?is)<a[^>]*?href=(['""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=(['""s]?)(?<href>([^'""s]*.doc)|([^'""s]*.docx)|([^'""s]*.xls)|([^'""s]*.xlsx)|([^'""s]*.ppt)|([^'""s]*.txt)|([^'""s]*.zip)|([^'""s]*.rar)|([^'""s]*.gz)|([^'""s]*.bz2))1[^>]*?>"