我有一个网页源代码,有几次出现
<div class="detName">some unpredictable text</div>
我希望能够收集所有some unpredictable text
。
我尝试过类似的事情:
var match = Regex.Match(pageSourceCode, @"<div class='detName'>/(A-Za-z0-9\-]+)\</div>", RegexOptions.IgnoreCase);
但是没有成功,这个问题会有什么好处?
答案 0 :(得分:2)
Don't使用正则表达式解析HTML,您可以使用HTML Agility Pack
:
string html = "<div class=\"detName\">some unpredictable text</div>";
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
HtmlAgilityPack.HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//div[contains(@class,'detName')]");
foreach (var node in nodes)
{
Console.WriteLine(node.InnerText);
}
答案 1 :(得分:0)
var match = Regex.Match(pageSourceCode, @"(?<=<div class='detName'>)(.*)(?=</div>)", RegexOptions.IgnoreCase);