我正在尝试从控制台应用程序中的HTML字符串中提取值。
这MSDN几乎解释了我想要的内容,就像Get html element by value
一样在我的控制台应用程序中,我的功能看起来像
public void MyMethod()
{
var myValue = GetValueFromHtml("<a href=\"#\">My Link</a>");
}
internal string GetValueFromHtml(code)
{
//mycode
//returns My Link
}
我可以使用字符串操作,在第一个>
上拆分,然后在第一个'&lt;'这个新值上进行拆分。
我想我也可以尝试将其转换为XDocument(尽管有关非法字符的投诉,但我仍然可以使用)但总体而言似乎有点矫枉过正?我尝试使用XElement,但因为我有<
标签
我觉得我可以使用HtmlElement.GetValue()来实现相同的功能,但我不知道当我不使用数组/列表时如何?
答案 0 :(得分:3)
我建议你使用HtmlAgilityPack(可从NuGet获得):
string html = "<a href=\"#\">My Link</a>";
var node = HtmlNode.CreateNode(html);
string value = node.InnerHtml; // "My Link"
答案 1 :(得分:2)
string html = "<a href=\"#\">My Link</a>";
XElement elem = XElement.Parse(html);
Console.WriteLine(elem.Value); // output: My Link