String utils stuff

git-svn-id: https://spexeah.com:8443/svn/Asuro@235 6dbc8c32-bb84-406f-8558-d1cf31a0ab0c
This commit is contained in:
kieron committed 2017-10-24 08:21:30 +00:00
1 parent 1606144c4c
commit 5a59376eae
8 files changed
+27 -3

No files matched your search

BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
BIN
View File
Binary file not shown.
+27 -3
View File
@@ -18,13 +18,29 @@ function stringContains(str : pchar; sub : pchar) : boolean;
implementation implementation
function stringToUpper(str : pchar) : pchar; function stringToUpper(str : pchar) : pchar;
begin var
result : pchar;
i : uint32;
begin
result:= stringCopy(str);
for i:=0 to stringSize(result) do begin
if (byte(result[i]) >= 97) and (byte(result[i]) <= 122) then result[i]:= char(byte(result[i]) - 32);
end;
stringToUpper:= result;
end; end;
function stringToLower(str : pchar) : pchar; function stringToLower(str : pchar) : pchar;
begin var
result : pchar;
i : uint32;
begin
result:= stringCopy(str);
for i:=0 to stringSize(result) do begin
if (byte(result[i]) >= 65) and (byte(result[i]) <= 90) then result[i]:= char(byte(result[i]) + 32);
end;
stringToLower:= result;
end; end;
function stringEquals(str1, str2 : pchar) : boolean; function stringEquals(str1, str2 : pchar) : boolean;
@@ -55,6 +71,7 @@ begin
size:= stringSize(str); size:= stringSize(str);
result:= stringNew(size); result:= stringNew(size);
memcpy(uint32(str), uint32(result), size); memcpy(uint32(str), uint32(result), size);
stringCopy:= result;
end; end;
function stringNew(size : uint32) : pchar; function stringNew(size : uint32) : pchar;
@@ -80,8 +97,15 @@ begin
end; end;
function stringConcat(str1, str2 : pchar) : pchar; function stringConcat(str1, str2 : pchar) : pchar;
begin var
size : uint32;
result : pchar;
begin
result:= stringNew(stringSize(str1)+stringSize(str2));
memcpy(uint32(str1), uint32(result), stringSize(str1));
memcpy(uint32(str2), uint32(result+stringSize(str1)), stringSize(str2));
stringConcat:= result;
end; end;
function stringContains(str : pchar; sub : pchar) : boolean; function stringContains(str : pchar; sub : pchar) : boolean;