//! \89½\8ds\82Ü\82Å\82½\82ß\82é\82©\82Ì\83T\83C\83Y
FBuffSize: Integer;
//! \83u\83\89\83E\83U\82ÌIHTMLDocument2\83C\83\93\83^\83t\83F\81[\83X\82ð\95Û\8e\9d\82·\82é open\82©\82çclose\82Ì\8aÔ\82Å
- FBrowserDoc: Variant;
+ FBrowserDoc: OleVariant;
public
constructor Create(Browser: TWebBrowser; BuffSize: Integer);
destructor Destory;
begin
No := IntToStr(index + 1);
DivideStrLine(Line, @Res);
+ Res.FBody := DeleteLink(Res.FBody);
AddAnchorTag(@Res);
ConvRes(@Res, PResLink);
Res.FDateTime := AddBeProfileLink(Res.FDateTime, index + 1);
class function THTMLCreate.DeleteLink(const s: string): string;
var
s1: string;
- s2: string;
+ mark: string;
idx: Integer;
- i: Integer;
begin
- i := 0;
- Result := '';
- while True do begin
- s1 := GikoSys.GetTokenIndex(s, '<a href="', i);
- s2 := GikoSys.GetTokenIndex(s, '<a href="', i + 1);
-
- idx := Pos('">', s1);
- if idx <> 0 then
- Delete(s1, 1, idx + 1);
- idx := Pos('">', s2);
- if idx <> 0 then
- Delete(s2, 1, idx + 1);
-
- Result := Result + s1 + s2;
-
- if s2 = '' then
- Break;
+ mark := '<a href="';
+ Result := '';
+ s1 := s;
+ idx := AnsiPos(mark, s1);
+ while idx <> 0 do begin
+ Result := Result + Copy(s1, 1, idx - 1);
+ Delete(s1, 1, idx);
+ // \83^\83O\82Ì\83G\83\93\83h\82ð\92T\82·
+ idx := AnsiPos('">', s1);
+ if idx <> 0 then begin
+ Delete(s1, 1, idx + 1);
+ end;
+ // </a> \82Ü\82Å
+ idx := AnsiPos('</a>', s1);
+ if idx <> 0 then begin
+ Result := Result + Copy(s1, 1, idx - 1);
+ Delete(s1, 1, idx + 3);
+ end;
+ idx := AnsiPos(mark, s1);
+ end;
- inc(i, 2);
- end;
+ Result := Result + s1;
end;
{
\brief HTML\89»\82Ì\82½\82ß\82Ì\92u\8a·
end;
procedure TBufferedWebBrowser.Open;
begin
- FBrowserDoc := Idispatch( olevariant(FBrowser.ControlInterface).Document);
+ FBrowserDoc := FBrowser.ControlInterface.Document;
FBrowserDoc.open;
FBrowserDoc.charset := 'Shift_JIS';
end;