parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

на коленке набросал - должно работать вроде

Jk 24.05.2004 02:33 / 24.05.2004 18:05

#удаляем напрочь все скрипты, стили и спэйсеры
$buffer[^buffer.match[<(script|spacer|style)[^^>]*>(.*?)</\1>][gi]{}]
#удаляем все парные тэги. 10 - максималтная длина названия тэга
^while(^buffer.match[<(\w{1,10})[^^>]*>(.*?)</\1>][gi]){
$buffer[^buffer.match[<(\w{1,10})[^^>]*>(.*?)</\1>][gi]{$match.2^#0A}]
}
#удаляем все непарные тэги
$buffer[^buffer.match[<[!a-z]{1,10}[^^>]*>][gi]{}]
#комментарии тоже нам не нужны
$buffer[^buffer.match[<!--.*?-->][gi]{}]
#конкретные замены лучше делать риплейсом
$rep[^table::create{from	to 
&nbsp^;	  }] 
$buffer[^buffer.replace[$rep]]
$buffer
и всё это вставляем в постпроцесс

где можно улучшить - возможно многие вещи можно сделать с помощью replace
опять же - вполне возможно Вам не нужно удалить именно тэги. Потому как остаётся куча бессымсленных элементов - меню, заголовки и др.

P.S. Придёт Eugene Spearance - много ошибок найдёт и Вам подскажет