Regex для получения всего тега html без атрибута

Мне нужно получить все теги HTML без атрибута из строки. Я попробовал regex: < *([^/][^ ]*).*?> Но он по-прежнему получает HTML-тег и атрибуты.

Может ли кто-нибудь помочь мне найти регулярное выражение, чтобы получить это.

Пример:

Из , я хочу получить .

И Regex, чтобы получить только тег html

добраться до html головы головы тела aa тела

Спасибо всем.

1 ответ

Хотя вообще не рекомендуется вообще анализировать HTML с регулярным выражением, в этом случае он работает.

Попробуйте следующую замену

s/<( *\w+)( [^>/]+)?(/?)>/<$1$3>/g

Это соответствует скобку угла открытия, затем фиксирует возможное [A-Za-z0-9_] пространство и любые [A-Za-z0-9_] символы ([A-Za-z0-9_]). Затем, если есть пробел, за которым следуют любые символы, которые не являются ни косой чертой, ни скобой угла закрытия, это соответствует этому. Затем он фиксирует дополнительную косую черту и скобу закрытия.

Он заменяет это скобой угла открытия, захваченным тегом, захваченной дополнительной косой чертой и скобой угла закрытия.

Это предполагает, что угловые скобки открытия или закрытия не являются частью тега.

licensed under cc by-sa 3.0 with attribution.