Regex para eliminar etiquetas HTML

Usa /<[^>]*>/g con buscar y reemplazar. Cada ejemplo de abajo está probado con el patrón, y puedes abrirlo en el Regex Tester con las muestras ya cargadas.

Actualizado el

Antes

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

Después (reemplaza con nothing)

Hello world!

Cómo funciona el patrón

ParteSignificado
<Un corchete angular de apertura
[^>]*Cualquier carácter excepto un corchete de cierre
>El corchete de cierre
→ ""Se reemplaza por nada

Ejemplos de código

JavaScript

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

Python

import re

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

PHP

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

Notas y limitaciones

Rápido y práctico para marcado sencillo, pero falla con atributos que contienen > y no decodifica entidades como &amp;. En los navegadores, new DOMParser().parseFromString(html, "text/html").body.textContent es más seguro.

Preguntas frecuentes

¿Cuál es el regex para eliminar etiquetas HTML?
/<[^>]*>/g — se usa con buscar y reemplazar. Consulta la tabla de arriba para ver qué hace cada parte.
¿Funciona en Python y PHP?
Sí: los ejemplos de código de arriba usan el mismo patrón con re en Python y con las funciones preg en PHP.
¿Cómo pruebo este regex?
Haz clic en “Abrir en Regex Tester”: el patrón, los flags y el texto de ejemplo se cargan automáticamente, y las coincidencias se resaltan mientras editas.