|
|
ru.website- RU.WEBSITE ------------------------------------------------------------------- From : Serge Shikov 2:5020/400 06 Jul 2000 20:24:17 To : All Subject : Re: вырезание атрибутов -------------------------------------------------------------------------------- Andrej Ramaszeuski wrote: > > >> Какой самый быстрый и удобный способ вырезать атрибуты либо у всех > >> таког в HTML файле, либо у нескольких заданных тагов (например, у > >> всех P, TD и UL) ? Сегодня попытался написать на Perl'е скрипт, так > >> не смог regexp нужное подобрать. > SS> И не сможешь. > SS> Регкспы в общем случае не для того, чтобы парсить языки типа HTML. > Регекспы годятся для всего. Hе надо сказок. Регекспы не предназначены для разбора рекурсивных структур, какой является HTML. Обычный регексп - это конечный автомат, а рекурсивные языки разбирают автоматами со стеком. При этом нормальные люди для этого используют парсеры, сгенеренные автоматически по грамматике языка, обычно что-то типа LL(1), LR(1), LALR(1). Конечно, можно извратиться и написать такой руками с помощью регекспов, на относительно новых версиях перла уже можно (при помощи конструкции (?{ code })). Только нафига, когда есть более простые, удобные и переносимые способы? > SS> Для этого HTML::Parser имеется. > Разговоp шёл о фильтpации а не паpсинге. А давай ты сначала посмотришь на то, что предлагают, а потом уж будешь лезть со своими пятью копейками. В комплекте HTML::Parser есть модуль HTML::Filter, который именно фильтр для HTML и есть. --- ifmail v.2.15dev5 * Origin: home (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.website/28254fb2af43.html, оценка из 5, голосов 10
|