加上H3?什么意思,提取网址的正则:
http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=#]*)?
加<h3>有个好处,就是过滤掉无关不想要的url
是分析了网页源码的结果
@么么么: 那就这样写:
<h3>.*?(?<URL>http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=#]*)?).*?</h3>
这里用了命名分组,组名为URL
@artwl: 我的QQ 47853754 高手可否加QQ请教
@么么么: 完整Demo,你就按照这个写吧:
var html = "<h3><a href=\"http://14545825.blog.hexun.com/55381916_d.html\" onclick=\"report(genStr,2,'%B9%E3%B3%A1%3Cem%3"+ "E%CA%E9%B7%A8%3C%2Fem%3E%D0%B4%BA%CD%D0%B3','http%3A%2F%2F14545825.blog.hexun.com%2F55381916_d.html');pr_get(this.href"+ ",'blog.click.res','2','qz')\" target=\"_blank\">广场<em>书法</em>写和谐</a>wgsh28793 [2010年08月14日]</h3><h3><a "+ "href=\"http://14545825.blog.hexun.com/55381916_d.html\" onclick=\"report(genStr,2,'%B9%E3%B3%A1%3Cem%3E%CA%E9%B7%A8%3C"+ "%2Fem%3E%D0%B4%BA%CD%D0%B3','http%3A%2F%2F14545825.blog.hexun.com%2F55381916_d.html');pr_get(this.href,'blog.click.res'"+ ",'2','qz')\" target=\"_blank\">广场<em>书法</em>写和谐</a>wgsh28793 [2010年08月14日]</h3><h3><a href"+ "=\"http://14545825.blog.hexun.com/55381916_d.html\" onclick=\"report(genStr,2,'%B9%E3%B3%A1%3Cem%3E%CA%E9%B7%A8%3C%2"+ "Fem%3E%D0%B4%BA%CD%D0%B3','http%3A%2F%2F14545825.blog.hexun.com%2F55381916_d.html');pr_get(this.href,'blog.click.res'"+ ",'2','qz')\" target=\"_blank\">广场<em>书法</em>写和谐</a>wgsh28793 [2010年08月14日]</h3>"; var reg = new Regex(@"<h3>.*?(?<URL>http(s)?://([\w-]+\.)+[\w-]+(/[\w- ./?%&=#]*)?).*?</h3>", RegexOptions.Multiline); var ret = reg.Matches(html); if (ret.Count>0) { for (var i = 0; i < ret.Count; i++) { Console.WriteLine("group1 value:" + ret[i].Groups["URL"].Value);//输出:thing } }
楼上正解,学习了。。。