全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1371
推到 Plurk!
推到 Facebook!

抓取Memo中的值

尚未結案
baygon
一般會員


發表:20
回覆:31
積分:10
註冊:2003-10-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-19 13:54:34 IP:210.201.xxx.xxx 未訂閱
問題如下 在Memo中有1,2,3三項如何抓出各項的值 1.aaaaaaaa aaaa 2.bbbbbbbb 3.ccccccccccc ccccc
seaturn99
版主


發表:69
回覆:427
積分:214
註冊:2003-08-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-19 14:06:47 IP:220.130.xxx.xxx 未訂閱
var
  i:integer;
begin
  for i:=0 to Memo1.Lines.Count-1 do
    if CheckItem(Memo1.Lines.Strings[i],'1.') then
       // Save String to your target
end;    
Memo1.Lines.Count => 表示共有幾行 Memo1.Lines.Strings[i] => 第 i 1 行的字串 CheckItem => 您自己要撰寫的字串解析函式 , return boolean value .. // 註解的地方,再完成您想要的動作即可 .. ---- 我只會兩件事,這也不會,那也不會 眼見不一定為真 ---- 發表人 - SouthWind 於 2004/11/19 14:10:38
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-19 14:23:22 IP:202.62.xxx.xxx 未訂閱
您好﹗    試試這個方法﹕
Var
  MyLength, IPos1, IPos2, IPos3 : Integer;
  Str : String;
begin
  IPos1 := Pos('1.', Memo1.Text);
  IPos2 := Pos('2.', Memo1.Text);
  IPos3 := Pos('3.', Memo1.Text);
  MyLength := Length(Memo1.Text);
  ShowMessage(IntToStr(IPos1)   #10#13   IntToStr(IPos2)   #10#13   
    IntToStr(IPos3));
  Str := '1.的內容為﹕'  
    Copy(Memo1.Text, Length('1.') 1, IPos2-Length('1.'))   #10#13;
  Str := Str   '2.的內容為﹕'  
    Copy(Memo1.Text, IPos2 Length('2.'), IPos3-IPos2-Length('1.')-
      Length('2.'))   #10#13;
  Str := Str   '3.的內容為﹕'  
    Copy(Memo1.Text, IPos3 Length('3.'), MyLength-IPos3-Length('3.'));
  ShowMessage(Str);
end;
========================= 我是您的朋友﹐有您真好﹗ =========================
------
忻晟
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-11-20 11:16:44 IP:61.222.xxx.xxx 未訂閱
建議不要使用這種方式。容易造成誤判! 除非在每一行定義開頭字元,以作為識別。 建議改用 ListBox 元件。
baygon
一般會員


發表:20
回覆:31
積分:10
註冊:2003-10-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-11-23 16:11:45 IP:210.201.xxx.xxx 未訂閱
謝謝各位給我的意見 在Memo中的值是由使用者自行輸入的 我也是用SouthWind兄 所用的方法 但是程式碼寫得又臭又長,而且還是會有誤判的機會 至於cashxin2002兄 我深感抱歉,因為問題沒有表達清楚 其實最主要是想問前輩有何高見...
seaturn99
版主


發表:69
回覆:427
積分:214
註冊:2003-08-25

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-11-23 16:23:30 IP:220.130.xxx.xxx 未訂閱
引言: 謝謝各位給我的意見 在Memo中的值是由使用者自行輸入的 我也是用SouthWind兄 所用的方法 但是程式碼寫得又臭又長,而且還是會有誤判的機會 至於cashxin2002兄 我深感抱歉,因為問題沒有表達清楚 其實最主要是想問前輩有何高見...
baygon 您好 : 是 CheckItem 實作上,發生誤判嗎?? 您是要抓 '*1.*' 這個字串 Pattern 的東西,還是某一種 '1.' 字串變化的 Pattern ?? 字串解析,手上有幾個不錯的用的 function ,可否描述清楚一點,才能知道能否達到您的需求?? ---- 我只會兩件事,這也不會,那也不會 眼見不一定為真 ----
baygon
一般會員


發表:20
回覆:31
積分:10
註冊:2003-10-03

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-11-28 08:17:21 IP:210.64.xxx.xxx 未訂閱
引言: baygon 您好 : 是 CheckItem 實作上,發生誤判嗎?? 您是要抓 '*1.*' 這個字串 Pattern 的東西,還是某一種 '1.' 字串變化的 Pattern ?? 字串解析,手上有幾個不錯的用的 function ,可否描述清楚一點,才能知道能否達到您的需求?? ---- 我只會兩件事,這也不會,那也不會 眼見不一定為真 ----
SouthWind 您好: 最近有點給它小忙 我需要用到的是 '1.' 字串變化的 Pattern 有機會互相研究研究,吸取別人不同的見解。
系統時間:2024-05-17 14:59:14
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!