如何在字符串数组中查找字符串
解决方案 »
- 急切求助Wise Installation System 9.02 的有用法
- adotable删除
- UDP发送和接收文件
- 各位楼主啊,我真得有不明?
- 关于条件断点
- 关于DELPHI和ACCESS的初级问题。
- 过年了,但还有个关于菜单的小问题要问,进者有分~~
- 随机数不随机怎么办,救急
- 我用Delphi5.0编写一个关机程序,在win98、me下可以关机,但在win2000下变成了注销。为什么?
- 请问如何在移动DBGrid的滚动条时而不移动记录指针?请帮助!
- 请教各位Delphi同聊们一个简单问题,给100分噢。急!!!!在线等待!!!!
- 请问为什么我用EXESCOPE看一个程序用了那些DLL里的函数时,为什么有的DLL里显示的只有序号
begin
for i:= 1 to 10 do
begin
pos('',s[i]);
end;
end;
如:
var
sNames:TStrings;
iIndex:integer;
begin
sNames:=TStringList.Create;
sNames.add('张三');
sNames.add('李四');
sNames.add('王五');
iIndex:=sNames.IndexOf('李四');
//如果iIndex>-1 则说明找到,否则就没有找到。
//你也可以简单的这样用sNames[0]...
end;
function MaxMatchStr(DestStr:String;Strs:array of String):String;
var
I:Integer;
begin
Result:='';
for I:=1 to Length(Strs) do
//如果与目标匹配
if (Pos(Strs[I],DestStr)>0) and
//而且比现在找到的结果更长
(Length(Strs[I])>Length(Result)) then
//替换当前结果
Result:=Strs[I];
end;
function MatchToken(var Buffer: Pchar; const MatchStr: string): Boolean;
var
Token: Pchar;
begin
Token := Pchar(MatchStr);
while Buffer^ <> #0 do
begin
if UpCase(Buffer^) = Token^ then
inc(Token)
else if Token <> Pchar(MatchStr) then
begin
Token := Pchar(MatchStr);
if UpCase(Buffer^) = Token^ then
inc(Token);
end;
inc(Buffer);
if Token^ = #0 then
Break;
end;
Result := Token^ = #0;
end;
i:integer;
begin
x:=TStringList.Create;//这就是字符串数组
x.add('abc');
x.Add('bcd');
x.Add('cde');
x.Add('def');
for i:=low(x) to high(x) do
begin
if pos('ab',x[i])>0 then//假定ab是要寻找的字符串
showmessage('success')
else showmessage('fail');
end;
s:array of string;
begin
for i:= Low(s) to High(s) do
begin
If pos('字符',s[i-1])>0 Then ShowMessage('找到');
end;
end;