字符串问题! 有如下字符串str:='306441215200001 广宇房地产开发有限公司'怎样将他保存于两个变量中如s1:='306441215200001's2:='广宇房地产开发有限公司' 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那没关系。i:=Pos(' ',str);s1:=Trim(Copy(str,1,length(str)-i-1);s2:=Trim(Copy(str,i,length(str)-i); s1 := LeftStr(str, pos(' ', str) - 1);Delete(str, 1, pos(' ', str) - 1);s2 := TrimRight(str); 谢谢楼上的几位刚才没考虑周全,字符串有可能是这样的str:='306441215200001 广宇房地产开发有限公司 12.3'要分割成三个子串s1:='306441215200001's2:='广宇房地产开发有限公司's3:='12.3' while not (I=0) do begin I:=Pos(' ',Str); if I=0 then begin ShowMessage(Trim(Str)); Exit; end; ShowMessage(Trim(Copy(Str,0,I-1))); Str:=Trim(Copy(Str,i,Length(str)-i)); end; 你不太喜欢动脑子吗,把取得的字符串这样p:=pos('',str);s1:=trim(str,1,p);tempstr:=trim(copy(str,p,length(str)));p:=pos('',tempstr);s2:=trim(tempstr,1,p);s3:=trim(copy(str,p,length(tempstr))); 如果字符串不定长度,可以使用递归来写,每次取得的字符可以放到STRINGLIST中 试试WrapText这个函数,查查帮助 这个问题你应该这样解决先Trim(),然后判断第一个是数字还是字符,循环取知道不相同为止,如果出现不相同的将以前截取的字符存取到一个变量,截取完为止。 用Pos(' ',string);来判断空格再字符串中的位置。然后用Copy方法来分割字符串。再用trim来处理字符串前的空格。 最好用递归法Trim(str) [讨论/求助] 数据库项目 用 DLL 来封装模块 问题 如何解决Debug session in progress,Terminate? [北京][软件外包]开发电子词典(Delphi开发) 跟游戏有关的小问题 谁知道哪里有Delphi下深入Windows核心编程 一书光盘下载 一个数据库更新的问题? 如何用api函数实现服务器和客户端的字符串传输?(讨论和将帖子提前的都有分拿) 哪里可以下载dbdateedit组件呀 我的2002(一个极度伤心的男人和两个女人) 谁能推荐有关编写vxd的好书? 连接记事本 fastreport报表如何导出word文件?
i:=Pos(' ',str);
s1:=Trim(Copy(str,1,length(str)-i-1);
s2:=Trim(Copy(str,i,length(str)-i);
Delete(str, 1, pos(' ', str) - 1);
s2 := TrimRight(str);
字符串有可能是这样的str:='306441215200001 广宇房地产开发有限公司 12.3'要分割成三个子串s1:='306441215200001'
s2:='广宇房地产开发有限公司'
s3:='12.3'
begin
I:=Pos(' ',Str);
if I=0 then
begin
ShowMessage(Trim(Str));
Exit;
end;
ShowMessage(Trim(Copy(Str,0,I-1)));
Str:=Trim(Copy(Str,i,Length(str)-i));
end;
p:=pos('',str);
s1:=trim(str,1,p);
tempstr:=trim(copy(str,p,length(str)));
p:=pos('',tempstr);
s2:=trim(tempstr,1,p);
s3:=trim(copy(str,p,length(tempstr)));
先Trim(),然后判断第一个是数字还是字符,循环取知道不相同为止,如果出现不相同的将以前截取的字符存取到一个变量,截取完为止。
然后用Copy方法来分割字符串。再用trim来处理字符串前的空格。
Trim(str)