如何用正则表达式提取网页Meta 中 keywords 的 content 值
如何用正则表达式提取网页Meta 中 keywords 的 content 值.谢谢了急用,
我是这样写的,但是有的网页获取不到..很是郁闷,\
string reg = "<meta name=\"keywords\" content=\"(?<key>\\S+?)\".+?/>";
MatchCollection mc = Regex.Matches(str, reg, RegexOptions.IgnoreCase); //满足pattern的匹配集合
textBox2.Text += "关键字结果为:";
foreach (Match match in mc)
{
// Console.WriteLine(match.ToString());
GroupCollection gc = match.Groups;
textBox2.Text += count + "\r\n";
textBox2.Text += gc["key"].Value + "\r\n";
}
大家帮我看看吧.谢了.
正则表达式
keywords
------解决方案--------------------
string reg = "(?<=meta name=\"keywords\" content=\").*?(?=\")";
string key_words = Regex.Match("html代码", reg).Value;
------解决方案--------------------<meta\b[^>]*?name=\"keywords\"[^>]*?content=\"(?<key>[^"]+?)\"[^>]+?/>
Group["key"].Value
------解决方案--------------------
WebClient wc = new WebClient();
wc.Encoding = Encoding.UTF8;
string html = wc.DownloadString("http://www.csdn.net/article/2013-01-06/2813468-Crowdfunding-Games-Dev");
string reg = "(?<=meta name=\"keywords\" content=\").*?(?=\")";
string key_words = Regex.Match(html, reg).Value;
Console.WriteLine(key_words);
为什么不试试我3楼#3的代码呢?