我有Bing html,我想解析它的结果:
string BingRegex = "<div class=\"sb_tlst\"><h3><a href=\"(.*?)\"";
string[] results = Regex.Matches(responseStr, BingRegex).Cast<Match>().Select(m => m.Value).ToArray();
Run Code Online (Sandbox Code Playgroud)
我将结果发送到数组,但它将模式添加到每个结果,如:
<div class=\"sb_tlst\"><h3><a href=\"www.cnn.com\"
<div class=\"sb_tlst\"><h3><a href=\"www.google.com\"
<div class=\"sb_tlst\"><h3><a href=\"www.gmail.com\"
Run Code Online (Sandbox Code Playgroud)
知道我怎么能解决这个问题并获得网址?
我建议不要使用正则表达式来解析HTML.使用HtmlAgilityPack,如此处所示.然后只需使用XPath来获取所需属性的值.
样本div的XPath
<div class="sb_tlst">
<h3>
<a href="www.gmail.com"/>
</h3>
</div>
Run Code Online (Sandbox Code Playgroud)
将会
/div[@class='sb_tlst']/h3/a/@href
Run Code Online (Sandbox Code Playgroud)