一个提取字符串的问题。(50分)

  • 主题发起人 huzhaowei116
  • 开始时间
H

huzhaowei116

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在要提取一个编号字符串,起格式为??.??.??,就是以点号作为分界符,但是现在并不
知道有几个点号,可以无数多点号,点号之间有不定数的字符,现要提取最后一个点号之前
的所有字符,就是字符串是???.??.??.???,提取出来的则是???.??.??,请问应该如何提取,
字符串里没有中文。
 
procedure TForm1.Button1Click(Sender: TObject);
var
s,temp:string;
i:integer;
suc:boolean;
begin
s:='123.12.234.235.12';
temp:='';
while suc do begin
if pos('.',s)>0 then begin
i:=pos('.',s);
temp:=temp+copy(s,1,i);
s:=copy(s,i+1,length(s)-i);
end
else
suc:=false;
end;
temp:=copy(temp,1,length(temp)-1);
showmessage(temp);
end;
 
var
i : integer;
begin
for i := length(s) downto 1 do
if s = '.' then
begin
Result := Copy(s, 1, i - 1) ;
exit;
end;
end;
 
秋之叶的法子效率蛮高的
 
多人接受答案了。
 
顶部