| 看板: BudaTech ◎ 佛典電子化討論 板主: HeavenChow |
| 閱讀文章: 第 1114/2032 篇 | 上篇 | 下篇 | 回覆 | 轉寄 | 轉貼 | m H d | 返回 |
發信人: DavidChiou.bbs@cbs.ntu.edu.tw (Post Gateway), 信區: BudaTech 標 題: Re: 一些說明 發信站: 由 獅子吼站 收信 (Wed Dec 31 12:52:31 1997) 寄件人: dnstudio@m2.dj.net.tw [=InterNet E-mail=] 標 題: Re: 一些說明 發信站: 國際網路信件 (Tue Dec 30 09:38:11 1997) 邱大剛 寫道: > > ==> 於 Heaven (Heavenchow@Lion) 文中述及: > : 2.若字元大於 128 , 則此字元及下一個字元屬於中文. 檢查此中文是否是需要的. > : 3.若是小於 128 , 以英文及符號看待. (包括換行碼) > : 4.處理完這個中文或英文, 再換下一個字. > > 這�塈畯茪H有些小經驗, 或許可以提升搜尋速率(如果要搜尋 > 的文件相當多, 而使用的程式語言較高階的話): > > "可試著先不管中英文, 全部用英文的搜尋方式. 找出的結果再以中文 > filter 來除去誤判的即可. " > 這是 cbs 上的做法? 真要提高速度, 則須要建立 index table, 而且利用如 hashing table 的 資料結構, search 時先 search 此 table 再根據其 index 找到 which file which line in the file, the string position within the line. > 另外, 對於較短篇的比對(所以佛典搜尋� case 或許不適用), > 有時若使用較高階的語言(ex: Perl), 或許可先將所有的中文字間以空 > 白隔開, 然後再以空白為字元的間隔單位. 這個好處是英文及中文的比對 > 可一次解決掉, 而且是依照中英的相對順序. 不過效率如何我沒有仔細評 > 估過, 僅供參考. > 如果用的是英文版的 search engine, 被 search 的中文file用這個處理 應是個好方法(如早期的 netscape 顯示中文的問題), 如果自己寫程式, 還是用 128 來區別就可以了, 不過其他的 string manupitation 就 都可能自己要動手寫了. > 附帶一提的是, 在單教授以前發展的 cgrep 上, 有 "換行搜尋" 的 > 功能. 例如說以下文件: > "觀自在菩薩行深般 > 若波羅蜜多時照見" > 要找出 "般若" 的話, 就必須具有換行搜尋的功能(這在 maha > 的測試也有指出), 因此可以考慮未來加入此一功能(據我所知, > 單教授 cgrep 的作法好像是 define 一個某大小的 buffer, 能將 > 前一行的最後面 n 個字元和這一行接起來, 一同進行比對?) > 末學上個月發表的 fts (中文全文檢索程式)也做了 "換行搜尋"的功能, 不過是用前一行的尾與後一行的頭來控制, 當初思考的時間不少但最後的 algorithm 卻不是很複雜. ps: fts 在如來網上面 http://www.dharma.org.tw/tool/fts95.zip |
| 閱讀文章: 第 1114/2032 篇 | 上篇 | 下篇 | 回覆 | 轉寄 | 轉貼 | m H d | 返回 |
卍 台大獅子吼佛學專站 http://buddhaspace.org |