使用 Apache Lucene 搜索文本
本文将探讨 Apache Lucene —— 性能卓越、功能全面的文本搜索引擎库。我们将学习 Lucene 架构及其核心 API。学习如何使用 Lucene 进行跨平台全文本搜索、建立索引、显示结果,以及如何扩展搜索。<!--START RESERVED FOR FUTURE USE INCLUDE FILES--><!-- include java script once we verify teams wants to use this and it will work on dbcs and cyrillic characters --><!--END RESERVED FOR FUTURE USE INCLUDE FILES-->
![]()
本文从使用 Lucene V2.4.1 和 Java 技术开发的样例应用程序中挑选了一些代码片段。示例应用程序为存储在属性文件中一组电子邮件文档编制索引,并展示了如何使用 Lucene 的查询 API 搜索索引。该示例还让您熟悉基本的索引操作。
?
![]()
RangeQuery 您可以使用 RangeQuery 在某个范围内搜索。索引中的所有项都以字典顺序排列。Lucene 的 RangeQuery 允许用户在某个范围内搜索项。该范围可以使用起始项和最终项(包含两端或不包含两端均可)指定。
列表 4. 在某个范围内搜索
![]()
![]()
![]()
关于下载方法的信息![]()
参考资料
学习
了解所有有关 Apache Lucene 的内容,包括最新新闻。Lucene in Action(作者:Erik Hatcher 和 Otis Gospodnetic)是 Lucene 的权威指南。它描述了如何编制数据索引,包括您必须了解的几种类型,比如 MS Word、PDF、HTML 和 XML。它介绍了如何搜索、排序、过滤和高亮显示搜索结果。
要收听面向软件开发人员的有趣访谈和讨论,请查看 developerWorks 播客。
随时关注 developerWorks 技术活动和网络广播。
查阅最近将在全球举办的面向 IBM 开放源码开发人员的研讨会、交易展览、网络广播和其他 活动。
访问 developerWorks 开放源码专区,获得丰富的 how-to 信息、工具和项目更新,帮助您用开放源码技术进行开发,并与 IBM 产品结合使用。
查看免费的 developerWorks 演示中心,观看并了解 IBM 及开源技术和产品功能。
获得产品和技术
下载 IBM 产品评估试用版软件 或 IBM SOA Sandbox for Reuse,并开始使用来自 DB2?、Lotus?、Rational?、Tivoli? 和 WebSphere? 的应用程序开发工具和中间件产品。
?