Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.07.14;
Скачать: [xml.tar.bz2];

Вниз

Поиск в HTML   Найти похожие ветки 

 
APTEMKA   (2003-06-28 00:27) [0]

Мастера подскажите плз ответ, нужно из кучи(1000-500) файлов в формате HTML, искать текст.

Например город*
чтоб нашел: город, города, городской

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


Заране спасибо


 
APTEMKA   (2003-06-28 19:39) [1]

Мастера ну что ни кто не знает??, плз обратите внимание!!!


 
Тих   (2003-06-28 20:43) [2]

Требуется
1) Библиотека vbscript.dll (входит в состав IE и офиса)
2) Знакомство с регулрными выражениями.

uses COmObj, ActiveX;

procedure FindMatches(const FileName: string; const What: WideString);
var
pFile : TStringList;
S : OleVariant;
Matches: OleVariant;
sResult: WideString;
i : integer;
begin
pFile := TStringList.Create;
try
pFile.LoadFromFile(FileName);
S:= CreateOleObject("vbscript.regexp");
S.Global := 1;
S.IgnoreCase := 1;
S.Pattern := "\r\n";
sResult := S.Replace(pFile.Text, "");
S.Pattern := "<.*?>";
sResult := S.Replace(sResult, "");
S.Pattern := "\s" + What + ".*?\s";
Matches := S.Execute(sResult);
for i:= 0 to Matches.Count - 1 do
begin
ShowMessage(Matches.Item[i]);
end;
finally
pFile.Free;
S := unassigned;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
FindMatches("H:\soft\ora\ORACLUB.htm", "меню");
end;


 
Тих   (2003-06-28 20:52) [3]

Это разве куча? :-))
Аттеншн: файл может быть в юникоде, тогда TStringList и string не подходят. Берем scripting.FileSystemObject и работаем c юникодом. Для поиска можно прикрутить и объектную модель IE, будет достаточно быстро, но уж шибко громоздкая у него объектная модель...


 
APTEMKA   (2003-06-29 00:10) [4]

Спасибо большое, а е скажешь бывают ли готовые компаненты, чтоб там был и юникод


 
APTEMKA   (2003-06-30 23:57) [5]

если готовые такие компаненты


 
Beginner3000   (2003-07-01 00:20) [6]

есть
Парсеры называется
только гемороиться не стоит
в хтмл текст - тоже текст
сколько по тегам не разбирай текстом и останется, причём кодировка не изменится.
to Тих: для такого простого поиска регулярные выражения - излишество
Артёмке:в крайнем случае, если очень нужно перегнать в вордовый файл, вордом и пользуйся (через дельфи естест-но), но это для поиска не годится, только для распечатывания


 
APTEMKA   (2003-07-01 03:26) [7]

Спасибо вам


 
ночной кочмарь   (2003-07-01 03:35) [8]

2 APTEMKA (01.07.03 03:26)

обрати внимание на mshtml.pas и в частности на IHTMLElement.get_InnerText.
Применять к тегу body..

детали - в msdn или на groups.google.com по ключевым словам delphi IHTMLElement InnerText



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.07.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.007 c
7-44931
Kooler
2003-05-04 01:43
2003.07.14
Именение уровня громкости через Делфи


14-44870
Bill
2003-06-27 12:27
2003.07.14
Преобразование строки в математическое выражение


3-44572
Vlad2
2003-06-20 11:51
2003.07.14
Указатель на буфер записи базы данных после SetKey?


14-44824
Natalik
2003-06-26 11:12
2003.07.14
Как просмотреть архив старых форумов.


14-44842
igor
2003-06-26 16:04
2003.07.14
Отчет





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский