首頁 > 後端開發 > C++ > 如何有效率地刪除字串中的所有 HTML 標籤?

如何有效率地刪除字串中的所有 HTML 標籤?

DDD
發布: 2025-01-05 11:53:41
原創
760 人瀏覽過

How Can I Remove All HTML Tags from a String Efficiently?

在不指定標籤的情況下從字串中剝離HTML

問題:

如何輕鬆地從字符串中刪除所有HTML 標籤,無論具體標籤如何涉及?

範例:

考慮以下富含 HTML的字串:

string title = "<b>Hulk Hogan's Celebrity Championship Wrestling     <font color=\"#228b22\">[Proj # 206010]</font></b>     (Reality Series,)
登入後複製

理想情況下,我們希望輸出為是:

"Hulk Hogan's Celebrity Championship Wrestling [Proj # 206010] (Reality Series)"
登入後複製

解:

正規表示式方法:

一個有效的解法是用正規表示式:

public static string StripHTML(string input)
{
   return Regex.Replace(input, "<.*?>", String.Empty);
}
登入後複製

此正規表示式符合尖括號中包含的任何字串 () 並將其替換為空字串。

HTML Agility Pack:

或者,您可以利用 HTML Agility Pack 函式庫:

HTMLDocument doc = new HTMLDocument();
doc.LoadHtml(input);
string stripped = doc.DocumentNode.InnerText;
登入後複製

此方法解析HTML字串,只回傳文字內容,不包括所有標籤和

注意事項:

雖然這些方法可以有效地刪除HTML標籤,但它們也有限制:

  • 正規表示式方法可能會遺漏一些複雜的內容HTML 結構。
  • HTML Agility Pack 對於大型 HTML 可能會較慢檔案。

根據您的特定要求和權衡選擇合適的解決方案非常重要。

以上是如何有效率地刪除字串中的所有 HTML 標籤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板