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

在字串中,找特定的 keyword

答題得分者是:folkchen
wearefamily
一般會員


發表:12
回覆:16
積分:5
註冊:2004-03-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-01-10 16:17:16 IP:140.116.xxx.xxx 未訂閱
如果要找的keyword 在 Memo field (屬性是String) 每一筆的的起始位置 ,就可以找到 Keyword, 但是keyword 不一定在每筆資料字串的第一個位置,就會找不到,像這樣的情況,請問有辦法解決嗎?    
例:  "我們" 可以在  我們家     中,找到
      但在          不是我們家 中,卻找不到
      如何在 不是我們家 中,找到"我們",這樣的keyword?
void __fastcall TForm1::ClientDataSet1FilterRecord(TDataSet *DataSet,
      bool &Accept)
{    AnsiString temp;      temp=(ClientDataSet1->FieldByName("Memo")->AsString).SubString(1,(Edit7->Text).Length());      if ((!CompareStr(Edit7->Text,temp)) || (!(Edit7->Text).Length()))
    Accept=True;
  else
    Accept=False;    }
folkchen
高階會員


發表:9
回覆:232
積分:173
註冊:2003-10-09

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-01-10 16:45:40 IP:211.20.xxx.xxx 未訂閱
因為你將Memo的資料只切Edit7->Text的長度的資料出來跟Edit7->Text做比較 "不是我們家"就只剩下"不是"這2個字在跟"我們"比較 當然不會正確呀 你要用pos來判斷,或是自己用迴圈去把整個字串切成小小字串來比較 if ((ClientDataSet1->FieldByName("Memo")->AsString).Pos(Edit7->Text) !=0) Accept=True; else Accept=False;
wearefamily
一般會員


發表:12
回覆:16
積分:5
註冊:2004-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-01-10 17:14:09 IP:140.116.xxx.xxx 未訂閱
正解呀! ^_^ 阿里阿多
系統時間:2024-05-19 6:04:08
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!