[fpc-pascal] RegExpr - replace
Marcos Douglas
md at delfire.net
Sun Sep 7 02:37:06 CEST 2014
Hi,
I'm using RegExpr to parse some parts, just SOME parts, of a HTML and works
perfectly. But, in one case I need identify a "pattern" to reuse using new
"values".
Please, see the example (using Lazarus) bellow:
procedure TForm1.Button1Click(Sender: TObject);
var
InputStr: string;
r: TRegExpr;
begin
r:= TRegExpr.Create;
try
InputStr := '<a href="/3604669/trabalho-28-07-2014-pg-1" title="Página
1, pg 1, 28/07/2014"> 28/07/2014 </a>';
r.Expression := '\/([0-9]+)\/.*?pg\-(\d+).*?"';
r.Exec(InputStr);
ShowMessage(r.Match[0]); // = /3604669/trabalho-28-07-2014-pg-1"
ShowMessage(r.Match[1]); // = 3604669
ShowMessage(r.Match[2]); // = 1
finally
r.Free;
end;
end;
The results are OK.
I need to replace the position #1 and #2 with something like:
#p1# and #p2#
So, in other words, I need a result like this:
Pattern = /#p1#/trabalho-28-07-2014-pg-#p2#"
I tried to use r.Replace() or r.Substitute() but I think these methods
don't do I want.
Is possible?
--
Marcos Douglas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20140906/7e90c53f/attachment.html>
More information about the fpc-pascal
mailing list