请问如何去掉一字符串中的回车符及以后的字符???(20分)

  • 主题发起人 主题发起人 9903
  • 开始时间 开始时间
9

9903

Unregistered / Unconfirmed
GUEST, unregistred user!
有一个字符串变量,在字符串中间有一个回车符,后面还是字串,请问怎样把回车符以前的字串截取出来??
 
用Pos找回车符的位置
用Copy函数取出
 
a:=copy(s,1,pos(#13,s))
 
同意楼上的,您可以这样试:加一个Memo控件,然后在里面打几行字
然后showmessage(copy(Memo1.Text,1,pos(#13,Memo1.Text)));肯定只有第一行的
 
楼上的代码有问题,因为需要考虑双字节字符的问题,不能用 POS 函数,应该用 AISIPOS 函数!
应该的方法是这样的:
procedure TrimByCR(var S: String);
var
X: Integer;
begin
X:= AnsiPos(#13, S);
if X >= 1 then SetLength(S, X - 1);
end;
 
var
s:String;
sl:TStringList;
begin
sl:=TStringList.Create;
sl.Text:=s; //s 是您的数据。
sl.Strings[1]; //就是第一行,n,就是第n行。
sl.Free;
end;
 
谢谢以上各位
 
感觉还是SupermanTm的方法最好,wang_80919的方法有误

sl.Strings[1]; //就是第一行,n,就是第n行。
这句应为:
sl.Strings[0]; //0才是第一行,n是n-1行.
 
不好意思,写错了。
不过我的计数法是从0开始的,国家的数学书都改了:)
 

Similar threads

回复
0
查看
1K
不得闲
回复
0
查看
848
不得闲
回复
0
查看
813
不得闲
回复
0
查看
608
不得闲
后退
顶部