Maison >interface Web >js tutoriel >Comment supprimer les balises HTML des chaînes en JavaScript à l'aide d'expressions régulières ?

Comment supprimer les balises HTML des chaînes en JavaScript à l'aide d'expressions régulières ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-29 02:41:02649parcourir

How to Remove HTML Tags from Strings in JavaScript using Regular Expressions?

Supprimer les balises HTML des chaînes en JavaScript

Supprimer les balises HTML d'une chaîne est essentiel pour diverses tâches de développement Web, telles que l'analyse du texte de le DOM ou le rendu du contenu en toute sécurité. En JavaScript, cela peut être réalisé via des expressions régulières.

Solution Regex :

<code class="javascript">const cleanText = strInputCode.replace(/<\/[^>]+(>|$)/g, "");</code>

Cette expression régulière cible les balises HTML d'ouverture (<) suivies d'une barre oblique facultative. (/), n'importe quel nombre de caractères qui ne sont pas des balises fermantes (>), et soit une balise fermante (>) ou la fin de la chaîne ($).

Explication :

  • < : correspond à la balise HTML d'ouverture.
  • / : correspond à une barre oblique facultative pour les balises à fermeture automatique.
  • [^>] : Correspond à un ou plusieurs caractères qui ne sont pas des balises fermantes.
  • (>|$) : correspond à une balise fermante ou à la fin de la chaîne.

Exemples :

  • " собаки" => "собаки"
  • "Ивано́в" => "Ивано́в"
  • " чем можно угостить" => " чем можно угостить"

Limitations :

Bien qu'efficace, cette expression régulière a des limites. Il peut ne pas parvenir à supprimer les balises qui ne sont pas bien formées ou qui contiennent des attributs avec certains caractères.

Solutions alternatives :

Pour une suppression plus robuste des balises, envisagez d'utiliser un analyseur. comme le DOM. Cependant, cette approche nécessite un accès au DOM et peut ne pas convenir à tous les scénarios.

Remarques supplémentaires :

  • Assurez-vous que la chaîne d'entrée est fiable avant d'utiliser cette expression régulière, car elle ne gère pas le HTML potentiellement malveillant.
  • Envisagez d'utiliser des désinfectants comme sanitize-html pour une protection complète contre les entrées malveillantes.

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