Repository URL to install this package:
Version:
2.0.10 ▾
|
program parsewikipage;
{$mode objfpc}{$H+}
uses
Classes, sysutils, WikiParser;
type
{ TWikiParse }
TWikiParse = class
procedure OnToken(Token: TWPToken);
public
procedure Parse(Filename: string);
end;
{ TWikiParse }
procedure TWikiParse.OnToken(Token: TWPToken);
var
TextToken: TWPTextToken;
begin
exit;
write('TWikiParse.OnToken ',dbgs(Token.Token));
if Token is TWPTextToken then begin
TextToken:=TWPTextToken(Token);
write(': "',copy(TextToken.Page.Src,TextToken.StartPos,TextToken.EndPos-TextToken.StartPos),'"');
end;
writeln;
end;
procedure TWikiParse.Parse(Filename: string);
var
Page: TWikiPage;
begin
Page:=TWikiPage.Create;
try
Page.LoadFromFile(Filename);
writeln(ExtractFileName(Filename),' ID="',Page.ID,'" Title="',Page.Title,'" Revision="',Page.Revision,'" timestamp="',Page.TimeStamp,'"');
Page.Parse(@OnToken);
finally
Page.Free;
end;
end;
var
i: Integer;
Parser: TWikiParse;
begin
Parser:=TWikiParse.Create;
for i:=1 to Paramcount do begin
Parser.Parse(ParamStr(i));
end;
end.