0
我的目标是通过计算域名中有多少个句点来辨别域名是否具有子域名。如果它有两个时期,显然有一个子域。 我有以下的水晶报表公式写在Crystal语法水晶报告:字符“。”在域名字符串错误
local numbervar count :=0;
Local numbervar strLen := length({?domain});
local stringvar c := {?domain};
local numbervar i;
local numbervar pos2 :=0;
for i:=1 to strLen do
( if Mid({?domain}, i, 1) = "." then
(
count := count + 1;
if count = 2 then (
pos2 := i
);
);
);
if count > 1 then
left({?domain}, pos2)
else
left({?domain},instr({?domain}, ".")-1)
什么想法?希望这是我累了的眼睛只是在上釉。
更新:这是发生的奇怪的事情。 如果我添加“+ totext(POS2)
if count > 1 then
left({?domain}, pos2) + totext(pos2)
else
left({?domain},instr({?domain}, ".")-1)
它输出正确地与.COM subdomain.domain除去
如果我运行它没有totext(POS2)
if count > 1 then
left({?domain}, pos2)
else
left({?domain},instr({?domain}, ".")-1)
它只显示subdomain.domain.com的子域部分 任何想法为什么?
FYI,“伯爵”是水晶受控串whatchamacallit。作为良好的编程习惯,我建议将您的变量重命名为“tot”或“cnt”或“all”或“total”。 – PowerUser 2010-09-01 15:13:32
另外,abs()是否必要?我只是无法看到pos2会消极的任何情况。 – PowerUser 2010-09-01 15:20:02