function GetSubStrCounts(ASubStr, AStr: string): Integer;
var
i: Integer;
begin
Result := (length(AStr)-length(StringReplace(AStr,ASubstr,'',[rfReplaceAll, rfIgnoreCase]))) div length(asubstr);
end;
function GetStrCounts(ASubStr, AStr: string): Integer;
var
i: Integer;
begin
Result := 0;
i := 1;
while PosEx(ASubStr, AStr, i) <> 0 do
begin
Inc(Result);
i := PosEx(ASubStr, AStr, i) + 1;
end;
end;