2009-02-18 2 views

ответ

0

ОК, решил это как-то.

Использовал библиотеку HTMLCleaner для синтаксического анализа входных данных в допустимом формате.

Затем я использую парсер DOM для перебора всего и разделяю все запрещенные теги и атрибуты.

(и некоторые незначительные уродливые хаки;))

Это было своего рода много работы.

3

Вы можете:

  • Реализовать SAX parser;
  • Построен документ с DOM parser, пройдите его и обрезайте, а затем конвертируйте обратно в HTML; или
  • Использовать identity transform в XSLT (при условии, что ваш HTML-код находится в формате XHTML или может быть преобразован в него с помощью, например, JTidy) с некоторыми дополнительными случаями, чтобы удалить атрибуты, которые вы не хотите.

Что бы вы ни делали, не пытайтесь делать это с регулярными выражениями.

+0

Я попытался использовать парсер DOM, но для этого нужно, чтобы html-теги были идеально выровнены, как в XML-файле. Я использую это для пользовательских входных данных, и это может быть в любом формате! – 2009-02-18 15:32:33

 Смежные вопросы

  • Нет связанных вопросов^_^