Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Функция удаления тегов из HTML


[wl] ©   (2006-07-27 11:20:00) 

скиньте пожалуйста такую функцию, если у кого-то есть.


@BraIN   (2006-07-28 13:37:00) [1]

Уже много-много раз говорили, что не предназначен regexpr для парсинга html. В FastLib есть функция StripHTMLorNonHTML.

http://www.megalib.com/books/923/63.htm


Оран Гутангович   (2006-07-28 08:14:00) [2]

Регулярным выражением проще всего. Выглядит это примерно так
function GetRowText(MessageText:String):String;  // удаляет теги из текста и лишние пробелы
var buff:String;
begin
 buff:=MessageText;
 with FExp  do
  begin
   RegEx:='<.*>';     // удаление тегов
   Options:=[preUnGreedy];
   Subject :=buff;
   Replacement := '';
   ReplaceAll;
   buff:=Subject;

   RegEx:='\s{2,}';     // удаление лишних пробелов
   Options:=[preUnGreedy];
   Subject :=buff;
   Replacement := '';
   ReplaceAll;
   buff:=Subject;
  end;
 Result:=buff;
end;


Slym   (2006-07-28 07:17:00) [3]

Загружаешь в MSXML.DOMDocument и по веточкам бежишь выдирая Text


tButton   (2006-07-28 06:27:00) [4]

есть функция которая режет комменты из HTML (к сожалению закомментированые скрипты тоже =))
могу в принципе приспособить под резку всех тегов


wl   (2006-07-28 00:59:00) [5]

да как-то не хотелось изобретать велосипед, обязательно что-то упущу...
ну ладно, раз готового нет...


TUser   (2006-07-27 18:03:00) [6]

Имхо, проще самому написать. См. про конечные автоматы, тут эта тема тоже много раз была.


[wl]   (2006-07-27 11:29:00) [7]

или компонент, если такой существует.
Если просто удалить от < до >, тогда получится одна длинная строка (или несколько длинных), такой вариант не подходит


Наверх

Титульная страница Поиск, карта сайта Написать письмо