当前位置:编程学习 > C#/ASP.NET >>

正则表达式获取a标签href里面的值

我要获取a标签里面href引号里面的内容 .正则如何写    string reg = @"<a[^>]*href=(""(?<href>[^""]*)""|'(?<href>[^']*)'|(?<href>[^\s>]*))[^>]*>(?<text>[\s\S]*?)</a>";这个正则可以获取 如 <a href="web1.html"></a>的href值既"web1.html" 。但..如果这样写<a href="../web1.html">或者<a href="~/web1.html">就获取不到"../"或者"~/"。哪位牛人给解决方案。只要是href引号里面的东西就全部获取!
--------------------编程问答-------------------- 用JS获取,A标签,然后,获取HREF内容。。。 --------------------编程问答-------------------- 在.NET后台获取渲染好以后的html输出结果流,并改变html页面结果流中的href属性值.请问能用js做到?如能做到。请给个解决方案 --------------------编程问答-------------------- --------------------编程问答-------------------- List<String> links = new List<String>();

MatchCollection matches = Regex.Matches(html, "<a(?:\\s+.+?)*?\\s+href=\"([^\"]*?)\".+>(.*?)</a>", RegexOptions.IgnoreCase);

foreach (Match match in matches)
{
    string s = match.Groups[1].Value;
    links.Add(s);
}
这样可以获取整个html流中的href中的值,但是我不知道怎么替换原来的href属性值. --------------------编程问答-------------------- 用Html Agility Pack 1.4.0 html分析。和改变href值。 --------------------编程问答--------------------

string reg = @"<a[^>]*href=([""'])?(?<href>[^'""]+)\1[^>]*>"
--------------------编程问答--------------------
string reg = @"(?i)<a[^>]*href=([""'])?(?<href>[^'""]+)\1[^>]*>"
--------------------编程问答--------------------
引用 4 楼 qingyunluck 的回复:
List<String> links = new List<String>();

MatchCollection matches = Regex.Matches(html, "<a(?:\\s+.+?)*?\\s+href=\"([^\"]*?)\".+>(.*?)</a>", RegexOptions.IgnoreCase);

foreach (Match match in matc……


此方法不错 谢谢! --------------------编程问答-------------------- 不行啊 编译都不能通过
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,