Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удаление html тегов и кода html, какой лучший способ и быстрый? 
V
    Опции темы
Elfebet
Дата 29.9.2006, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 545
Регистрация: 15.5.2006
Где: Украина. Запорожь е.

Репутация: 2
Всего: 14



пробовал функцию предложенную в дркб, но прога виснет если html текст выше 100 кб, посоветуйте плиз какой лучше применить способ отображения только тескта без html тегов?


--------------------
Программист не должен всё знать... он должен знать где можно посмотреть
PM MAIL ICQ GTalk   Вверх
Yanis
Дата 29.9.2006, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(Elfebet @  29.9.2006,  19:00 Найти цитируемый пост)
пробовал функцию предложенную в дркб, но прога виснет если html текст выше 100 кб, посоветуйте плиз какой лучше применить способ отображения только тескта без html тегов?

Загрузи его WebBrowser.


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Elfebet
Дата 29.9.2006, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 545
Регистрация: 15.5.2006
Где: Украина. Запорожь е.

Репутация: 2
Всего: 14



Цитата

Загрузи его WebBrowser. 

только не веббраузер. 


--------------------
Программист не должен всё знать... он должен знать где можно посмотреть
PM MAIL ICQ GTalk   Вверх
sOckets
Дата 29.9.2006, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЖгуПоПонедельникам
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 24.8.2006
Где: ws2.lib

Репутация: нет
Всего: 2



А что искать в тексте теги и удалять их религия не позволяет или знаний не хватает ?


--------------------
Я Будущий сотрудник Google Inc. Юзаем Google Code Search для поиска исходников. Юзаем GMail как почту.
PM   Вверх
Yanis
Дата 29.9.2006, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Ну тогда RegExpr тебе в руки.

P. S. Я опередил бугора?


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
BUGOR
Дата 29.9.2006, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Yanis, может ты ещё и регулярку составишь?smile Давай кто первее, я тебе даю фору в сутки))


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Zero
Дата 29.9.2006, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: 8
Всего: 24



Цитата(sOckets @  29.9.2006,  19:40 Найти цитируемый пост)
А что искать в тексте теги и удалять их религия не позволяет или знаний не хватает ?

Врядли это быстрый способ.
А автору помоему нужно именно это... smile 
PM MAIL ICQ   Вверх
Alexeis
Дата 29.9.2006, 19:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



Цитата(Zero @  29.9.2006,  19:24 Найти цитируемый пост)
Врядли это быстрый способ.
А автору помоему нужно именно это... 

Как он будет работать это будет зависеть от реализации. Например, построчная реализания будет довольно быстрой. 
Простейший вариант это удалять все что в угловых скобках и заменить спец. символы на на их видимые аналоги.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
sOckets
Дата 29.9.2006, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ЖгуПоПонедельникам
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 24.8.2006
Где: ws2.lib

Репутация: нет
Всего: 2



Цитата
Врядли это быстрый способ.
 нужно уметь писать , а если не умеешь учись уметь учиться писать smile

Это сообщение отредактировал(а) sOckets - 29.9.2006, 19:39


--------------------
Я Будущий сотрудник Google Inc. Юзаем Google Code Search для поиска исходников. Юзаем GMail как почту.
PM   Вверх
Elfebet
Дата 29.9.2006, 20:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 545
Регистрация: 15.5.2006
Где: Украина. Запорожь е.

Репутация: 2
Всего: 14



ну мне вообще-то надо найти несколько предложений (от 1 до 20) . так как цель поставили искать предложения до точки, нужно удалять ненужные теги, а то точка в тэгах частый символ и получается лабуда.


--------------------
Программист не должен всё знать... он должен знать где можно посмотреть
PM MAIL ICQ GTalk   Вверх
Fedia
Дата 30.9.2006, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 8
Всего: 13



Цитата(Elfebet @  29.9.2006,  20:40 Найти цитируемый пост)
нужно удалять ненужные теги, а то точка в тэгах частый символ и получается лабуда

Удалить теги можно например так:
Код

function DelTeg(s: string): string;
var
  i, j: integer;
begin
  repeat
    i:=Pos('<', s);
    if i>0 then
    j:=Pos('>', s);
    if (i>0) and (j>0) and (j>i) then
    delete(s, i, j - i + 1);
  until i = 0;
  Result:=s;
end;



--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
BUGOR
Дата 30.9.2006, 10:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Fedia, это очень тормозной вариант, на страничке весом всего 2КБ он у меня вообще завис.

Попробуй вот эту функцию:

Код

function DelTag(lpData: string): string;
var
exp: TRegExpr;
begin
  exp := TRegExpr.Create;
  exp.Expression := '<[^<>]+>';
  result := exp.Replace(lpData, '');
end;


На файле весом 100 Кб отработала за 5 секунд. 


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Fedia
Дата 30.9.2006, 12:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 465
Регистрация: 2.8.2006
Где: первым встречаю р ассвет

Репутация: 8
Всего: 13



Цитата(BUGOR @  30.9.2006,  10:29 Найти цитируемый пост)
Fedia, это очень тормозной вариант, на страничке весом всего 2КБ он у меня вообще завис.

Конечно, я просто не доработал функцию, и из-за этого происходило зацикливание:
Код

function DelTeg(s: string): string;
var
  i, j: integer;
begin
  repeat
    i:=Pos('<', s);
    if i>0 then
    j:=Pos('>', s);
    if (i>0) and (j>0) then
    if (j>i) then
    delete(s, i, j - i + 1) else
    begin
      Result:=Result + Copy(s, 1, j);
      delete(s, 1, j)
    end;
  until (i = 0) or (j = 0);
  Result:=Result + s;
end;

Попробуй этот вариант. Обрабатывает данную страницу форума менее чем за секунду.

Добавлено @ 12:07 
Цитата(BUGOR @  30.9.2006,  10:29 Найти цитируемый пост)
На файле весом 100 Кб отработала за 5 секунд. 

Ты обещал Yanis-у подождать сутки. Слово нужно держать  smile 

Это сообщение отредактировал(а) Fedia - 30.9.2006, 12:30


--------------------
Накануне решающей битвы
Я иду, и надеждою зыбкой
Озаряется эта дорога,
Я мечтаю увидеть улыбку
На лице победившего Бога…
PM MAIL ICQ   Вверх
Alexeis
Дата 30.9.2006, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



ребята вы забыли, что в тексте html символы
&lt; &gt; надо заменить на "<" ">"

Причем это не все спец. символы. Откройте справочник по HTML...
Их там может быть более сотни. Их обычно заменяет браузер. 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
BUGOR
Дата 30.9.2006, 15:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Fedia, я не сомневался, что на стандартных функциях работать будет быстрее, зато какая элегнтость достигается с использованием regexpr, хотя я бы использовал твой вариант, скорость решает в данном случае.

Цитата

Ты обещал Yanis-у подождать сутки. Слово нужно держать


Каюсь smile


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0951 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.