通过解析获取HTML标记的内容
本文关键字:HTML 获取 | 更新日期: 2023-09-27 18:29:22
我需要拆分这个/类似的字符串以获得VALUE
<a href="javascript:void(0);" id="def_" name="color" rel="ml">VALUE</a>
我可以做String.Split(">"),然后再做StringArr[1]。Split("<"),但这既不高效也不庞大。
做这件事的方法是什么?
您需要一个解析器,尝试拆分字符串只是一个临时的破解。查看HtmlAgilityPack
对于您的示例HTML,它会像这样:
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(inputHtml);
var text = doc.DocumentNode
.Descendants("a")
.Where(x => x.Attributes["id"]!=null &&
x.Attributes["id"].Value == "def_")
.First()
.InnerText;
您可以使用数组,如
split(new char[]{'<','>'}
示例
"<a href='javascript:void(0);' id='def_' name='color' rel='ml'>VALUE</a>".Split(new char[]{'<','>'})
返回一个结果,如
a href='javascript:void(0);' id='def_' name='color' rel='ml'
VALUE
/a
这是这个问题的一般解决方案。如果您很难使用HTML
,请不要以这种方式使用,而是使用特定的HTML
解析器。