mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-21 09:09:30 +02:00
* Add widestrutils, delphi compatibility (Bug ID 28396)
git-svn-id: trunk@32816 -
This commit is contained in:
parent
244be4f4c2
commit
96257e11d7
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -6960,6 +6960,7 @@ packages/rtl-objpas/src/inc/varerror.inc svneol=native#text/plain
|
||||
packages/rtl-objpas/src/inc/variants.pp svneol=native#text/plain
|
||||
packages/rtl-objpas/src/inc/varutilh.inc svneol=native#text/plain
|
||||
packages/rtl-objpas/src/inc/varutils.inc svneol=native#text/plain
|
||||
packages/rtl-objpas/src/inc/widestrutils.pp svneol=native#text/plain
|
||||
packages/rtl-objpas/src/morphos/varutils.pp svneol=native#text/plain
|
||||
packages/rtl-objpas/src/msdos/varutils.pp svneol=native#text/plain
|
||||
packages/rtl-objpas/src/nativent/varutils.pp svneol=native#text/pascal
|
||||
|
@ -61,6 +61,7 @@ begin
|
||||
|
||||
|
||||
T:=P.Targets.AddUnit('strutils.pp',StrUtilsOses);
|
||||
T:=P.Targets.AddUnit('widestrutils.pp',StrUtilsOses-ConvUtilOSes);
|
||||
T:=P.Targets.AddUnit('varutils.pp',VarUtilsOses);
|
||||
with T.Dependencies do
|
||||
begin
|
||||
|
56
packages/rtl-objpas/src/inc/widestrutils.pp
Normal file
56
packages/rtl-objpas/src/inc/widestrutils.pp
Normal file
@ -0,0 +1,56 @@
|
||||
unit WideStrUtils;
|
||||
|
||||
{$mode objfpc}
|
||||
{$H+}
|
||||
{$inline on}
|
||||
|
||||
interface
|
||||
|
||||
uses
|
||||
SysUtils;
|
||||
|
||||
function WideStringReplace(const S, OldPattern, NewPattern: WideString; Flags: TReplaceFlags): WideString;
|
||||
function WideReplaceStr(const AText, AFromText, AToText: WideString): WideString; inline;
|
||||
function WideReplaceText(const AText, AFromText, AToText: WideString): WideString; inline;
|
||||
|
||||
function UnicodeStringReplace(const S, OldPattern, NewPattern: UnicodeString; Flags: TReplaceFlags): UnicodeString;
|
||||
function UnicodeReplaceStr(const AText, AFromText, AToText: UnicodeString): UnicodeString; inline;
|
||||
function UnicodeReplaceText(const AText, AFromText, AToText: UnicodeString): UnicodeString; inline;
|
||||
|
||||
|
||||
implementation
|
||||
|
||||
function WideReplaceStr(const AText, AFromText, AToText: WideString): WideString; inline;
|
||||
begin
|
||||
Result := WideStringReplace(AText, AFromText, AToText, [rfReplaceAll]);
|
||||
end;
|
||||
|
||||
function WideReplaceText(const AText, AFromText, AToText: WideString): WideString; inline;
|
||||
begin
|
||||
Result := WideStringReplace(AText, AFromText, AToText, [rfReplaceAll, rfIgnoreCase]);
|
||||
end;
|
||||
|
||||
function UnicodeReplaceStr(const AText, AFromText, AToText: UnicodeString): UnicodeString; inline;
|
||||
begin
|
||||
Result := UnicodeStringReplace(AText, AFromText, AToText, [rfReplaceAll]);
|
||||
end;
|
||||
|
||||
function UnicodeReplaceText(const AText, AFromText, AToText: UnicodeString): UnicodeString; inline;
|
||||
begin
|
||||
Result := UnicodeStringReplace(AText, AFromText, AToText, [rfReplaceAll, rfIgnoreCase]);
|
||||
end;
|
||||
|
||||
Function WideStringReplace(const S, OldPattern, NewPattern: WideString; Flags: TReplaceFlags): WideString;
|
||||
|
||||
begin
|
||||
Result:= sysutils.WideStringReplace(S,OldPattern,NewPattern,Flags);
|
||||
end;
|
||||
|
||||
Function UnicodeStringReplace(const S, OldPattern, NewPattern: UnicodeString; Flags: TReplaceFlags): UnicodeString;
|
||||
|
||||
begin
|
||||
Result:= sysutils.UnicodeStringReplace(S,OldPattern,NewPattern,Flags);
|
||||
end;
|
||||
|
||||
end.
|
||||
|
Loading…
Reference in New Issue
Block a user