可能重复:
在C#中解析html的最佳方法是什么?
我想提取HTML文档的结构 - 所以标签比内容更重要.理想情况下,它也能够在一定程度上合理地处理格式错误的HTML.
有人知道一个可靠而有效的解析器吗?
使用正则表达式,我希望能够在多个DIV标记之间获取文本.例如,以下内容:
<div>first html tag</div>
<div>another tag</div>
Run Code Online (Sandbox Code Playgroud)
输出:
first html tag
another tag
Run Code Online (Sandbox Code Playgroud)
我使用的正则表达式模式只匹配我的最后一个div标签并错过了第一个.码:
static void Main(string[] args)
{
string input = "<div>This is a test</div><div class=\"something\">This is ANOTHER test</div>";
string pattern = "(<div.*>)(.*)(<\\/div>)";
MatchCollection matches = Regex.Matches(input, pattern);
Console.WriteLine("Matches found: {0}", matches.Count);
if (matches.Count > 0)
foreach (Match m in matches)
Console.WriteLine("Inner DIV: {0}", m.Groups[2]);
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
输出:
匹配发现:1
内部DIV:这是另一个测试
现在我正在使用HtmlAgilityPack.
但很难通过Xpath选择.
在Java中我知道Jsoup.是否有任何相同的.net库?
解析Html并使用CSS样式选择器来查找元素.
我正在寻找一个类或方法来解析包含html文档的字符串,就像我使用jquery一样:
所以我需要的主要是css选择器.
我想得到所有链接,或获取所有div元素(这是一个特殊的其他元素的孩子)和类似的东西.
有没有工具来做这些事情?