
30.10.2012, 18:33
|
 |
Профессионал
|
|
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
|
|
Цитата:
Сообщение от alikoder
нумлок - я понимаю дружище, но как реализовать не врубаюсь, смотрел несколько примеров в сети, пробовал переделывать для себя, на этом все.... ну не шарю я в этом парсинге, можешь направить меня на путь истинный?
|
Если в Memo1 вставить html-текст, то по нажатию кнопки Button1 из этого html-текста будет извлечена ссылка (URL) в Edit1:
Код:
procedure TForm1.Button1Click(Sender: TObject);
const
cFindText: string = 'so.addVariable("fileLink", "';
var
p1, p2: Integer;
Html, Url: string;
begin
Html := Memo1.Lines.Text;
Url := '';
p1 := Pos(cFindText, Html);
if p1 > 0 then
begin
Inc(p1, Length(cFindText));
p2 := PosEx('"', Html, p1);
if p2 > 0 then
begin
Url := Copy(Html, p1, p2 - p1);
if not AnsiStartsText('http://', Url) then Url := '';
end;
end;
Edit1.Text := Url;
if Url = '' then MessageDlg('Ссылка не найдена', mtError, [mbOK], 0);
end;
Также можно воспользоваться регулярными выражениями: - Текст с высоты птичьего полета или Регулярные выражения
- Использование VBScript RegExp в Delphi
|