C#抓取网页中含有特定字符串的链接
如题
如腾讯NBA页面http://sports.qq.com/nba/
我要获取该页面所有含有“/a/201301”的链接地址,存储到c:/sport_url.txt
请问如何实现
------解决方案--------------------用正则表达式
------解决方案--------------------
拼接正则表达式
------解决方案-------------------- string url = "http://sports.qq.com/nba/";
string html = GetHtml(url, Encoding.GetEncoding("gb2312"));
string str = "/a/201301";
string pattern = @"(?is)(?<=<a[^>]*?href=[""'])[^""']*?" + str + @"[^""']*[""'](?=[^>]*>)";
var ary = Regex.Matches(html, pattern).OfType<Match>().Select(t => t.Value).ToArray();
------解决方案--------------------还是正则比较方便
------解决方案--------------------先匹配出所有连接地址,然后IndexOf,如果用户输入的有些字符不太规范的话,拼接正则有可能会出现错误的表达式额~
------解决方案--------------------应该用正则表达式