一个string类型的字符串,它由很多行组成,怎么求得有多少行?
同时求出每行的字符串,以下标形式访问。
也就是这样:字符串:"fdsfsadfdscnncncnd#13fdascdnfdsjf#13fsjdkfjsd fsdkfds#13fdskcdnmcndjnafdfds#13"
其中#13是换行符,那么行数就是#13的个数,怎么求?
下标形式也就是rows[0]="fdsfsadfdscnncncnd",rows[1]="fdascdnfdsjf",rows[2]="13fsjdkfjsd fsdkfds"...
最好用delphi给出代码。我对delphi不太熟,工作遇到了。谢谢各位。
同时求出每行的字符串,以下标形式访问。
也就是这样:字符串:"fdsfsadfdscnncncnd#13fdascdnfdsjf#13fsjdkfjsd fsdkfds#13fdskcdnmcndjnafdfds#13"
其中#13是换行符,那么行数就是#13的个数,怎么求?
下标形式也就是rows[0]="fdsfsadfdscnncncnd",rows[1]="fdascdnfdsjf",rows[2]="13fsjdkfjsd fsdkfds"...
最好用delphi给出代码。我对delphi不太熟,工作遇到了。谢谢各位。
ss:Tstringlist;
beginss:=Tstringlist.create;
ss.text:=你的字符串;
ss[0]就是第1行
ss[1]就是第2行
....
最后记得:
ss.free;
list:TStringList;
s:string;
begin
s := 'fdsfsadfdscnncncnd#13fdascdnfdsjf#13fsjdkfjsd fsdkfds#13fdskcdnmcndjnafdfds#13';
list := TStringList.Create;
s := StringReplace(s,'#13',':',[rfReplaceAll]);
list.Delimiter := ':';
list.DelimitedText := s;
ShowMessage(list.Text);
ShowMessage(list.Strings[0]);
ShowMessage(IntToStr(list.Count));
list.Free;
end;
s:string;
Strl:TStringList;
begin
s:='fdsfsadfdscnncncnd#13fdascdnfdsjf#13fsjdkfjsd fsdkfds#13fdskcdnmcndjnafdfds#13';
Strl:=TStringList.Create;
ExtractStrings(['#','1','3'],[' '], PChar(s), Strl);
ListBox1.Items:=Strl;
ShowMessage(IntToStr(Strl.Count));
Strl.Free;
end;不过这还有点小问题,就是 ExtractStrings函数数据的第二个参数[' ']我现在填的是空格,他会自动去掉生成的每行前面的空格,你可以填别的字符,只不要影响你要得出来的数据就好了!