Maison >développement back-end >C++ >Comment supprimer efficacement les balises HTML d'une chaîne ?

Comment supprimer efficacement les balises HTML d'une chaîne ?

DDD
DDDoriginal
2025-01-06 02:01:40727parcourir

How to Efficiently Remove HTML Tags from a String?

Extraire du contenu à partir de chaînes HTML : supprimer des balises HTML

Supprimer des balises HTML d'une chaîne peut être une tâche courante en programmation. Bien que les balises spécifiques présentes dans la chaîne puissent varier, trouver une méthode fiable pour toutes les supprimer peut être difficile.

Une approche simple consiste à utiliser des expressions régulières. L'expression régulière suivante peut supprimer toutes les balises HTML :

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

Cette solution remplace toutes les balises HTML (< suivies d'un nombre quelconque de caractères, se terminant par >) par une chaîne vide.

Cependant, cette approche a ses limites. Il peut ne pas gérer tous les cas, en particulier lorsqu'il s'agit de structures HTML complexes ou profondément imbriquées.

Une solution plus robuste consiste à utiliser le HTML Agility Pack, une bibliothèque open source spécialement conçue pour manipuler le HTML. Un exemple utilisant la bibliothèque :

HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(input);
Console.WriteLine(doc.DocumentNode.InnerText);

Cette solution analyse le HTML dans un objet nœud HTML et extrait son texte interne, supprimant efficacement toutes les balises HTML tout en préservant le contenu de la chaîne.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn