delphi 循环提取字符串问题!~
以下字符串在Memo1中.111111\lkadjf\lksjl222222\sjdfsk\jhkkjh333333\asd\fksj\lkfjs我要提取每行以"\"结束...
以下字符串在Memo1中.
111111\lkadjf\lksjl
222222\sjdfsk\jhkkjh
333333\asd\fksj\lkfjs
我要提取每行以"\"结束的前面部分,也就是111111 222222 333333
然后写入到Memo2中
111111
222222
333333
还有如何避免重复(这个暂时不需要,以后可能需要)
谢谢各位大虾帮忙想一下. 展开
111111\lkadjf\lksjl
222222\sjdfsk\jhkkjh
333333\asd\fksj\lkfjs
我要提取每行以"\"结束的前面部分,也就是111111 222222 333333
然后写入到Memo2中
111111
222222
333333
还有如何避免重复(这个暂时不需要,以后可能需要)
谢谢各位大虾帮忙想一下. 展开
展开全部
delphi自带了一个分割函数
ExtractStrings
function ExtractStrings(Separators: TSysCharSet; WhiteSpace: TSysCharSet; Content: PAnsiChar; Strings: TStrings): Integer;
[参数注释]:
Separators 参数指定一组分割符,所有的子串都是用它们分割的。但是成对的引号内的分割符会被忽略(参看下面的例子)。
WhiteSpace 参数指定每个子串开头被忽略的字符s。
Content 参数就是被分割的“源”串了。
Strings 参数用于接收分割后的各个子串。它的原有内容不会被清空。别忘了Create哦。
另外,EctractStrings不会把(忽略WhiteSpaces后的)空串加入到Strings中。
ExtractStrings
function ExtractStrings(Separators: TSysCharSet; WhiteSpace: TSysCharSet; Content: PAnsiChar; Strings: TStrings): Integer;
[参数注释]:
Separators 参数指定一组分割符,所有的子串都是用它们分割的。但是成对的引号内的分割符会被忽略(参看下面的例子)。
WhiteSpace 参数指定每个子串开头被忽略的字符s。
Content 参数就是被分割的“源”串了。
Strings 参数用于接收分割后的各个子串。它的原有内容不会被清空。别忘了Create哦。
另外,EctractStrings不会把(忽略WhiteSpaces后的)空串加入到Strings中。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
str:string;
begin
for i:= 0 to Memo1.Lines.Count-1 do
begin
str:=copy(Memo1.Lines[i],0,pos('\',Memo1.Lines[i])-1);
Memo2.Lines.Add(str);
end;
end;
var i:integer;
str:string;
begin
for i:= 0 to Memo1.Lines.Count-1 do
begin
str:=copy(Memo1.Lines[i],0,pos('\',Memo1.Lines[i])-1);
Memo2.Lines.Add(str);
end;
end;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询