我希望能夠僅在文本周圍添加自定義標簽,所以假設我有一個節點:
<p>Some text <img src="" /> more text </p>
如何獲取圍繞“一些文本”和“更多文本”的自定義標簽?基本上我需要以包含元素的陣列結束:
arr[0] = 'Some text'
arr[1] = 'more text'
..然后在它們周圍添加我的自定義標簽,所以當這些文本元素被編輯時,p 標簽看起來像
<p>Some text with edits <img src="" /> more text with edits </p>
此外,需要以相同的方式處理子節點。
uj5u.com熱心網友回復:
有很多方法。查詢所有文本節點的最簡單方法:
var doc = ... get your document loaded
var textNodes = (doc.DocumentNode.SelectNodes("//text()") ?? Enumerable.Empty<HtmlNode>()).ToArray();
//Xpath 中的選項將查找樹中任何位置的所有節點。text()將選擇所有其他文本型別的節點。
由于SelectNodes如果沒有找到節點將回傳 null,因此我確保在這種情況下回傳一個 emtpy 陣列以便于進一步處理。
現在你可以用這些文本節點做你想做的事。設定它們的 InnerText 或 InnerHtml 屬性以覆寫文本。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/406513.html
標籤:
