Regex pour supprimer les balises HTML

Utilisez /<[^>]*>/g avec la fonction rechercher et remplacer. Chaque exemple ci-dessous a été testé avec ce motif, et vous pouvez l'ouvrir dans le Testeur de Regex avec les échantillons déjà chargés.

Mis à jour le

Avant

<p>Hello <strong>world</strong>!</p>

Après (remplacer par nothing)

Hello world!

Fonctionnement du motif

PartieSignification
<Un crochet ouvrant
[^>]*Tout caractère sauf un crochet fermant
>Le crochet fermant
→ ""Remplacé par une chaîne vide

Exemples de code

JavaScript

const out = text.replace(/<[^>]*>/g, "");

Python

import re

out = re.sub(r'<[^>]*>', r'', text)

PHP

$out = preg_replace('/<[^>]*>/', '', $text);

Remarques et limites

Pratique et rapide pour un balisage simple, mais elle ne fonctionne pas sur les attributs contenant > et ne décode pas les entités comme &amp;. Dans les navigateurs, new DOMParser().parseFromString(html, "text/html").body.textContent est plus sûr.

Questions fréquentes

Quelle est la regex pour supprimer les balises HTML ?
/<[^>]*>/g — elle s'utilise avec la fonction rechercher et remplacer. Consultez le tableau ci-dessus pour le rôle de chaque partie.
Fonctionne-t-elle avec Python et PHP ?
Oui : les exemples de code ci-dessus utilisent le même motif avec re en Python et les fonctions preg en PHP.
Comment tester cette regex ?
Cliquez sur « Ouvrir dans le Testeur de Regex » : le motif, les indicateurs et le texte d'exemple se chargent automatiquement, et les correspondances s'affichent en surbrillance pendant que vous modifiez.