Cómo funciona el patrón
| Parte | Significado |
|---|---|
< | Corchete angular de apertura |
\/? | Barra opcional para etiquetas de cierre |
[A-Za-z][A-Za-z0-9-]* | Nombre de la etiqueta, incluidos los elementos personalizados como my-card |
(?:\s[^<>]*)? | Atributos opcionales |
\/?> | Barra opcional de autocierre y el corchete de cierre |
Ejemplos de código
JavaScript
const matches = text.match(/<\/?[A-Za-z][A-Za-z0-9-]*(?:\s[^<>]*)?\/?>/g) ?? [];Python
import re
matches = re.findall(r'</?[A-Za-z][A-Za-z0-9-]*(?:\s[^<>]*)?/?>', text)PHP
preg_match_all('/<\/?[A-Za-z][A-Za-z0-9-]*(?:\s[^<>]*)?\/?>/', $text, $m);
$matches = $m[0];
Notas y limitaciones
Sirve bien para búsquedas rápidas y resaltado, pero las regex no pueden analizar HTML de forma fiable (comentarios, scripts, atributos que contienen >). Usa DOMParser o un parser real para cualquier caso importante. Para eliminar etiquetas y conservar el texto, consulta eliminar etiquetas HTML con regex.
Probador de expresiones regulares
Escribe un patrón y observa cómo se resaltan las coincidencias en tiempo real en tu texto de prueba.