Frage

Can Html Agility-Pack verwendet werden, um ein HTML-String-Fragment zu analysieren?

Wie zum Beispiel:

var fragment = "<b>Some code </b>";

extrahiert dann alle <b>-Tags? Alle Beispiele, die ich bisher Laden gesehen haben wie HTML-Dokumente.

War es hilfreich?

Lösung

Wenn es html dann ja.

string str = "<b>Some code</b>";
// not sure if needed
string html = string.Format("<html><head></head><body>{0}</body></html>", str);
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(html);

// look xpath tutorials for how to select elements
// select 1st <b> element
HtmlNode bNode = doc.DocumentNode.SelectSingleNode("b[1]");
string boldText = bNode.InnerText;

Andere Tipps

Ich glaube nicht, dass dies wirklich die beste Verwendung von HtmlAgilityPack.

Normalerweise sehe ich Leute große Mengen an html mit regulären Ausdrücken zu analysieren versuchen, und ich darauf, sie in Richtung HtmlAgilityPack aber in diesem Fall denke ich, es wäre besser, einen regulären Ausdruck zu verwenden.

Roy Osherove hat einen Blog-Beitrag beschreibt, wie Sie die HTML aus einer Schnipsel Streifen aus können:

Auch wenn Sie den richtigen XPath mit Mika Kolari der Probe erhalten tun dies nur für einen Schnipsel mit einem Tag in ihm funktionieren würde und brechen würde, wenn der Code geändert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top