mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-07 15:28:08 +02:00
42 lines
818 B
ObjectPascal
42 lines
818 B
ObjectPascal
{ %OPT=-O2 }
|
|
{$mode objfpc}
|
|
|
|
Function SmartPos(Pattern:Char; const Target:AnsiString; SrchBeg,SrchEnd: LongInt): LongInt;
|
|
Var
|
|
i : LongInt;
|
|
l : LongInt;
|
|
p : char;
|
|
t : char;
|
|
Begin
|
|
|
|
|
|
l := Length(Target);
|
|
|
|
p := Pattern;
|
|
|
|
for i := SrchBeg To l do begin
|
|
t := Target[i];
|
|
if t = p then begin
|
|
Writeln('Exit value ', i);
|
|
Result := i;
|
|
Exit(i);
|
|
end;
|
|
end;
|
|
|
|
Writeln('Exit value 0');
|
|
Exit(0);
|
|
End;
|
|
|
|
var
|
|
p1 : Integer;
|
|
|
|
begin
|
|
|
|
p1 := 0;
|
|
writeln(p1);
|
|
p1 := smartpos(':', '20394583245:092834523409:039485', 1, 20);
|
|
writeln(p1);
|
|
if p1<>12 then
|
|
halt(1);
|
|
end.
|