Регулярка очистки атрибутов тегов

Тема в разделе "Регулярные выражения", создана пользователем Stripe, 29 ноя 2010.

Статус темы:
Закрыта.
Модераторы: xpert13
  1. Stripe

    Stripe

    Регистр.:
    21 окт 2007
    Сообщения:
    164
    Симпатии:
    9
    Как должна выглядеть регулярка удаляющая все атрибуты у всех тегов HTML? Пытаюсь сделать так, но толку мало:
    PHP:
    $expr '<([a-z\d]+).*>';
    $clear_text preg_replace($expr'<$1>'$content);
     
  2. pitkina

    pitkina

    Регистр.:
    1 апр 2007
    Сообщения:
    253
    Симпатии:
    176
    PHP:
    $clear_text preg_replace("|<([a-z][a-z\d]*)[^>]*?(/?)>|i","<$1$2>",$content);
     
    Stripe нравится это.
  3. diavolic

    diavolic

    Регистр.:
    17 мар 2010
    Сообщения:
    522
    Симпатии:
    102
    (/?) и $2 лишние, у закрывающих тэгов не бывает атрибутов

    <([^\s|>]+)> вот еще более короткая маска
     
    Stripe нравится это.
  4. pitkina

    pitkina

    Регистр.:
    1 апр 2007
    Сообщения:
    253
    Симпатии:
    176
    это совсем другое, т.к. матчит теги без атрибутов и пробелов
    одинарные теги:
    Код:
    <img src="1.gif" />
    <input type="text" name="login" />
    <meta name="generator" />
     
    Stripe нравится это.
Статус темы:
Закрыта.