看板: 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.处理完这个中文或英文, 再换下一个字. > > 这□我个人有些小经验, 或许可以提升搜寻速率(如果要搜寻 > 的文件相当多, 而使用的程式语言较高阶的话): > > "可试著先不管中英文, 全部用英文的搜寻方式. 找出的结果再以中文 > 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 |