ホームページ >バックエンド開発 >C++ >文字列からすべての HTML タグを効率的に削除するにはどうすればよいですか?

文字列からすべての HTML タグを効率的に削除するにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-05 11:53:41722ブラウズ

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,)

理想的には、出力は次のようになります。 be:

"Hulk Hogan's Celebrity Championship Wrestling [Proj # 206010] (Reality Series)"

解決策:

正規表現アプローチ:

1 つの効率的な解決策は正規表現を利用します:

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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。