有關memo的問題 |
答題得分者是:ddy
|
miga
初階會員 發表:61 回覆:92 積分:30 註冊:2002-08-27 發送簡訊給我 |
|
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
用 pos 和 copy 指令
POS 是傳回指定字元在母字串中的位置
copy 是複制字串,語法:copy(母字串,開始擷取的位置,取得字元的數目),傳回取得後的子字串 例:
var a:string; begin Memo1.Clear; Memo1.Lines.Add ('abc<123456789>'); a:=Memo1.Lines.Strings[0]; Memo2.Lines.Add (Copy(a,Pos('<',a) 1,Pos('>',a)-Pos('<',a)-1)); end;噓~~~~~~沉思中… 發表人 - ddy 於 2002/10/21 19:01:53 |
miga
初階會員 發表:61 回覆:92 積分:30 註冊:2002-08-27 發送簡訊給我 |
|
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
|
miga
初階會員 發表:61 回覆:92 積分:30 註冊:2002-08-27 發送簡訊給我 |
引言:不太懂妳的意思,是說memo1裡都有"<"、">",而memo2裡和memo1的資料一樣,只是沒有"<"、">",是這樣子嗎? 如果是這樣子的話,加入loop,改變像下例String[]內的index即可 a:=Memo1.Lines.Strings[0]; 噓~~~~~~沉思中… [/quote] 哦哦… 我的意思是說… 我在memo1裡可能會有文字 abc<1234324> fadf<252525> : : 但我想要把這些文字處理完… 也就是只要<>裡的那些字 都能一行一行的放到memo2中 因為之前教的方法,我試了… 在memo2中卻都只出現一行文字… 不曉得是那裡錯了… 麻煩您了~~~謝謝 |
ddy
站務副站長 發表:262 回覆:2105 積分:1169 註冊:2002-07-13 發送簡訊給我 |
procedure TForm1.FormCreate(Sender: TObject); begin Memo1.Clear; Memo2.Clear; Memo1.Lines.Add('abc<12345>'); Memo1.Lines.Add('ccc<22225>'); Memo1.Lines.Add('ddd<9999>'); Memo1.Lines.Add('mm<11145>'); Memo1.Lines.Add('appa<9911115>'); end; procedure TForm1.Button1Click(Sender: TObject); var i:Integer; s:string; begin for i :=0 to Memo1.Lines.Count -1 do begin s:=Memo1.Lines.Strings[i]; Memo2.Lines.Add (Copy(s,Pos('<',s) 1,Pos('>',s)-Pos('<',s)-1)); end; end;我之前所說的loop 就是意思就是用for 迴圈,代變數去把Memo1一行一行的讀出來 這樣子沒問題了吧~~^^ 噓~~~~~~沉思中… |
Perlman
一般會員 發表:0 回覆:5 積分:1 註冊:2002-03-14 發送簡訊給我 |
|
miga
初階會員 發表:61 回覆:92 積分:30 註冊:2002-08-27 發送簡訊給我 |
引言:呵…ok~~~謝謝相助…解決了^^procedure TForm1.FormCreate(Sender: TObject); begin Memo1.Clear; Memo2.Clear; Memo1.Lines.Add('abc<12345>'); Memo1.Lines.Add('ccc<22225>'); Memo1.Lines.Add('ddd<9999>'); Memo1.Lines.Add('mm<11145>'); Memo1.Lines.Add('appa<9911115>'); end; procedure TForm1.Button1Click(Sender: TObject); var i:Integer; s:string; begin for i :=0 to Memo1.Lines.Count -1 do begin s:=Memo1.Lines.Strings[i]; Memo2.Lines.Add (Copy(s,Pos('<',s) 1,Pos('>',s)-Pos('<',s)-1)); end; end;我之前所說的loop 就是意思就是用for 迴圈,代變數去把Memo1一行一行的讀出來 這樣子沒問題了吧~~^^ 噓~~~~~~沉思中… |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |