![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
помогите с регулярным выражением (TRegExpr) [D7, WinXP]
delphi_ © (2007-01-27 13:15:00)Нужно распарсить html файл и найти в нем ссылки аля
<a class=l href=" http://www.geocities.com/johbeil/writers/best_minds.htm">
т.е. отличительная черта линка- <a class=l
недопустимо наличие в ссылки ,содержащей cache:
ели я прально понил...то делаю
procedure TForm1.Button1Click(Sender: TObject);
var
exp: TRegExpr;
url: String;
begin
url:=IdHTTP1.Get(урл);
exp := TRegExpr.Create;
exp.Expression:='<a class=l ([^\n>]*)>';
а вот что дльаше делать понять не могу вообще..как мне проверить урл на наличие cache: и добавить найденные урл в memo?
easy (2007-01-27 14:22:00) [1]
procedure GetLinks(const Text:string; Lines:TStrings);
const
expr = '(?i)(<a class=l(.+?)>)';
begin
with TRegExpr.Create do
try
Expression := expr;
if Exec(Text) then begin
repeat
Lines.Add(Match[1]);
until not ExecNext;
end;
finally
Free;
end;
end;
//************
procedure TForm1.Button1Click(Sender: TObject);
var
url: String;
begin
url:=IdHTTP1.Get(урл);
Memo1.Clear;
GetLinks(url,Memo1.Lines);
end;