請問TStringList要如何快速比對是否有部分字串相同即可 |
答題得分者是:P.D.
|
17kobe
初階會員 發表:86 回覆:73 積分:31 註冊:2007-07-30 發送簡訊給我 |
我有好幾筆資料如
dataSource[1]=ad.tmp' dataSource[2]=ard.tmp' dataSource[3]=ard.tmp' dataSource[4]=ard.tmp' dataSource[5]=aad.tmp' dataSource[6]=agd.tmp' dataSource[7]=a3d.tmp' . . . . 現在有個stringlist,裡面存有'gd'一筆資料 我要做的動作是何'gd'去比對所有dataSource資料,字串有部分相同則再加進'stringlist',不須取得index位置。最後目的得到stringlist清單而已 我的程式碼 [code delphi] for i:=1 to length(dataSource) then begin tmp_string:=UpperCase(dataSource[i]); //都轉成大寫 for j := 0 to sl.Count-1 do //比對所有sl裡的字串清單 begin if Pos(sl.Strings[j], tmp_string)>0 then //有找到部分字串相同的話 begin if sl.strings[j]<>tmp_string then //要不相同才加入sl裡,可能寫法也要改 sl.Add(tmp_string); break; end; end; end; [/code] 但我覺得我方式好像不太好,改用stringList的find方式可以部分比對嗎,而且不用知道其位置在哪。請問改怎麼可以快速部問比對比較好?? PS:我是要不分大小寫的 編輯記錄
17kobe 重新編輯於 2008-05-26 11:26:52, 註解 無‧
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
tcsnetok
一般會員 發表:3 回覆:8 積分:7 註冊:2008-05-26 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |