不支持字串检索,很多 if s=*** then ,怎样写最简捷? ( 积分: 10 )

  • 主题发起人 主题发起人 国色天香
  • 开始时间 开始时间

国色天香

Unregistered / Unconfirmed
GUEST, unregistred user!
比如:
if strname='张三' then ....
if strname='李四' then ....
if strname='王五' then ....
怎样写最简洁?
 
比如:
if strname='张三' then ....
if strname='李四' then ....
if strname='王五' then ....
怎样写最简洁?
 
我认为你应该考虑then里面有什么共性和个性
 
再具体一些啊,做什么用的?》
 
f strname='张三' then
begin
....
end;
if strname='李四' then
begin
....
end;
if strname='王五' then
begin
....
end;

怎样写最简洁?
 
function CaseString (const s: string
const x: array of string): Integer;
var
i: Integer;
begin
Result:= -1
// Default return parameter
for i:= Low (x) to High (x) do begin
if AnsiCompareText(s, x) = 0 then
begin
Result:= i;
Exit;
end;
end;
end;

调用:
case CaseString(strname, ["张三","李四", "王五"]) of
0://张三
1://李四
2://王五
end;
 
哈哈,又从楼上的学了一招,比我看过的其它几个解决该问题的方法要好!
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部