Да просто пиписьками мериемся на примере StringReplace. ТС это нафих не надо. В какой то момент просто стало интересно до чего дойдем.
По поводу "без Pos". Ну, тогда уж и без Delete и Insert. Это функции одного порядка, изначально реализованы в System. StringReplace добавилась потом. Так что Pos - можно. Собственно, можно просто Pos самому реализовать:
Код:
function MyPos(ASubStr, AStr : String) : Integer;
var
I, J : Integer;
F : Boolean;
begin
Result := 0;
for I := 1 To Length(AStr)-Length(ASubstr) Do
begin
F := true;
for J := 0 To Length(ASubStr)-1 Do
F := F And Astr[I+J] = ASubStr[J+1];
If F Then
begin
Result := I;
Break;
end;
end
end;
Вроде, так.
Ну, собственно, и Length тоже можно самому реализовать.