Вниз
Скачать: CL | DM;

Дайте исходник AnsiReplaceStr из 7 дельфей.   Найти похожие ветки 

← →
MegaVolt   (2004-08-02 12:43) [0]

Для работы проги в 5 дельфи нужна функция AnsiReplaceStr подкиньте исходник если не сложно.
Заранее благодарен :)


← →
GuAV ©   (2004-08-02 13:23) [1]

strutils.pas:

function AnsiReplaceStr(const AText, AFromText, AToText: string): string;
begin
 Result := StringReplace(AText, AFromText, AToText, [rfReplaceAll]);
end;

sysutils.pas:

function StringReplace(const S, OldPattern, NewPattern: string;
 Flags: TReplaceFlags): string;
var
 SearchStr, Patt, NewStr: string;
 Offset: Integer;
begin
 if rfIgnoreCase in Flags then
 begin
   SearchStr := AnsiUpperCase(S);
   Patt := AnsiUpperCase(OldPattern);
 end else
 begin
   SearchStr := S;
   Patt := OldPattern;
 end;
 NewStr := S;
 Result := "";
 while SearchStr <> "" do
 begin
   Offset := AnsiPos(Patt, SearchStr);
   if Offset = 0 then
   begin
     Result := Result + NewStr;
     Break;
   end;
   Result := Result + Copy(NewStr, 1, Offset - 1) + NewPattern;
   NewStr := Copy(NewStr, Offset + Length(OldPattern), MaxInt);
   if not (rfReplaceAll in Flags) then
   begin
     Result := Result + NewStr;
     Break;
   end;
   SearchStr := Copy(SearchStr, Offset + Length(Patt), MaxInt);
 end;
end;

[D7]


← →
MegaVolt   (2004-08-02 13:24) [2]

Большущее спасибо :)


← →
MegaVolt   (2004-08-02 13:26) [3]

А как описан тип TReplaceFlags?


← →
MicroVolt   (2004-08-02 14:03) [4]

StringReplace - эта функция в Delphi 5 есть, читай справку:))

type
 TReplaceFlags = set of (rfReplaceAll, rfIgnoreCase);
function StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string;


← →
MegaVolt   (2004-08-02 14:37) [5]

Точно есть :) Я стормозил :(

Может еще дадите исходники posex и midstr??


← →
R ©   (2004-08-03 04:14) [6]

А в QString функция замены работает быстрее-намного быстрее.


← →
MegaVolt   (2004-08-03 08:51) [7]

А что это за зверь? Где взять?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
11-1078401198
ssk
2004-03-04 14:53
2004.08.15
Printers - из VCL в KOL


14-1090991486
Мазут Береговой
2004-07-28 09:11
2004.08.15
Интересные факты.


3-1090418346
Delf
2004-07-21 17:59
2004.08.15
Откат изменений в ClientDataSet после вызова ApplyUpdates


6-1087268007
genemy
2004-06-15 06:53
2004.08.15
именованные каналы


1-1091108009
ИМХО
2004-07-29 17:33
2004.08.15
PostMessage и ComboBox




   Наверх