看板: BudaTech ◎ 佛典電子化討論 板主: HeavenChow |
閱讀文章: 第 1155/2032 篇 | 上篇 | 下篇 | 回覆 | 轉寄 | 轉貼 | m H d | 返回 |
發信人: "羅雲" <kftseng@cc.nsysu.edu.tw>, 信區: BudaTech 標 題: Re: 檢索測試 發信站: (NEWS/INFO) National Sun Yat-San University (Fri Jan 16 16:05:31 1998) 轉信站: Lion!ccnews.nsysu!news.nsysu!not-for-mail 來 源: 140.117.250.25 Heaven <Heavenchow.bbs@buddha.cbs.ntu.edu.tw> 次寫入到主題 <0000Ql$Wyx@buddha.cbs.ntu.edu.tw>... > ==> 於 邱大剛 (DavidChiou@Lion) 文中述及: > : 然後再用一個嚴謹的函式,以 ascii 128 等原理,將這 > : 50 筆中真正完全符合的給挑出來(或許有 48 筆。) > : 這樣子比起從頭到尾改成中文搜尋來得簡單許多。 > 和大剛討論後, 大概了解其所謂中文 filter , 的確是不錯的方法. > 因為之前的作法, 必需要從頭判斷是否為中文, 也就是每一個字都要 > if asc(xx) > 128 then ..... > 這種判斷的確花時間. 差不多只是把兩行程式順序巔倒而已. if (match) then if (asc(char) > 128) then endif endif if (asc(char) > 128) then if (match) then endif endif 其實可以不要用 c 內建的 strchr/strstr/index 等, 那些廣用的函式有時也是 delay 的原因, 況且若用 的是 c 的話, 根本就可以用 if (char > 128) .... 犯不著 asc(char) 去多轉一次 ascii 碼. 甚至就直接合為一行了... 你到鹿苑主機中的 bbs 程式中去找一個 match() 的函式, 速度很快的... 我現在是離線寫信, 沒辦法 查. 用 grep match *.c 應該就可以看到了. 應該是在 Feeling-x/MAIL2BBS 目錄下吧? 找一下應該 就可以找到了. good luck. |
閱讀文章: 第 1155/2032 篇 | 上篇 | 下篇 | 回覆 | 轉寄 | 轉貼 | m H d | 返回 |
卍 台大獅子吼佛學專站 http://buddhaspace.org |