进来看看,谁能帮我啊??(100分)

A

a2020a

Unregistered / Unconfirmed
GUEST, unregistred user!
比如说,
在memo中的内容为: 0,12,7,13,46
15,2,4,4,1

这些数没有规则,但分别用逗号把他们隔开,怎么样才能取到这些数字啊?不是整行的取,是取到单个数,比如怎么取到第一行的12??
拿位可以告诉我啊?最好具体点啊,写个例子啊,我是新手,在这里多谢了。
 
你的数字是已知的还是未知的?
如果是已知的就用pos、copy等函数取得,如果是未知的就一个一个字符地判断,直到符合条件为止。
 
数字是输入在memo里的啊,在未输入前是未知的啊,输入后就以知啦。
大哥可不可以写具体一点啊??我还不知道pos,copy等的用法啊。
 
var
StrList: TStringList;
str: string;
begin
StrList := TStringList.Create;
if Memo1.Text <> '' then //你在Memo里每行末也要加上逗号
begin
StrList.CommaText := Memo1.Text;
str := StrList.Strings[4]; //这里的4是你要的数字的位置减1
showmessage(str); //str就是你要的数字的字符串
end;
StrList.Free;
end;
 
procedure TForm1.Button1Click(Sender: TObject);
var
k:TParser;
m:TMemoryStream;
begin
m:=TMemoryStream.Create;
Memo1.Lines.SaveToStream(m);
m.Position :=0;
k:=TParser.Create(m);
while k.Token<>toEOF do
begin
case k.Token of
toFloat,toInteger:
begin
showmessage(k.TokenString);
end;
end;

k.NextToken;
end;
k.Free;
m.Free;
end;
 
ExtractStrings函数可以分隔字符串,返回一个TString
 
顶部