- 浏览: 319660 次
- 性别:
- 来自: 重庆
-
文章分类
- 全部博客 (286)
- 设计模式 (14)
- spring (5)
- 开发工具 (12)
- java (19)
- apache.commons工具 (7)
- ibaits (5)
- extjs4.0 (4)
- 数据库 (2)
- spring工具类 (2)
- jquery1.8 (32)
- 杂记 (1)
- linux (2)
- Quart (1)
- springMVC (2)
- webservice (1)
- oracle (5)
- dwr (6)
- jbmp3 (27)
- lucene3.5 (27)
- javascript (18)
- hibernate3.3.2 (27)
- spring事务管理 (10)
- nio (2)
- strust2 (3)
- jvm (7)
- jquery-easyui-1.2.6 (22)
- 多线程 (14)
- maven (3)
- 常用正则表达式 (4)
最新评论
-
HF_SKY000:
请问:
一、能否提供一下密钥库文件的生成方法?
二、密钥库的密 ...
Java sslSocket 聊天实例
Mike
默认域包含mike
Mike john
Mike OR john
默认域包含mike或者john
+mike +address:zhaotong
Mike AND address:zhaotong
默认域即使mike并且address是zhaotong
id :2
Id域为2
Address:Kunming –desc:she
Address:Kunming AND NOT desc:she
Address是kunming并且desc不是she
(mike OR john) AND address:zhaotong
默认域是mike或者john 并且address是zhaotong
Desc: “she like”
Desc域是she like
desc:”happy girl”~5
查找happy和girl之间距离小于5的文档
J*
默认域是j开头
Johe~
模糊搜索johe
Id:[“1” TO “3”]
Id从1到3
//1、创建QueryParser对象,默认搜索域为content
QueryParser parser = new QueryParser(Version.LUCENE_35, "content", new StandardAnalyzer(Version.LUCENE_35));
//改变空格的默认操作符,以下可以改成AND
//parser.setDefaultOperator(Operator.AND);
//开启第一个字符的通配符匹配,默认关闭因为效率不高
parser.setAllowLeadingWildcard(true);
//搜索content中包含有like的
Query query = parser.parse("like");
//有basketball或者football的,空格默认就是OR
query = parser.parse("basketball football");
//改变搜索域为name为mike
//query = parser.parse("content:like");
//同样可以使用*和?来进行通配符匹配
query = parser.parse("name:j*");
//通配符默认不能放在首位
query = parser.parse("email:*@itat.org");
//匹配name中没有mike但是content中必须有football的,+和-要放置到域说明前面
query = parser.parse("- name:mike + like");
//匹配一个区间,注意:TO必须是大写
query = parser.parse("id:[1 TO 6]");
//闭区间匹配只会匹配到2
query = parser.parse("id:{1 TO 3}");
//完全匹配I Like Football的
query = parser.parse("\"I like football\"");
//匹配I 和football之间有一个单词距离的
query = parser.parse("\"I football\"~1");
//模糊查询
query = parser.parse("name:make~");
//没有办法匹配数字范围(自己扩展Parser)
query = parser.parse("attach:[2 TO 10]");
发表评论
-
二十七、Luence在项目中运用
2012-12-26 15:03 1111public class LuceneContext { ... -
二十六、solr的基本使用
2012-12-26 10:26 971public class Message { p ... -
二十五、solr与tomcat的整合
2012-12-25 13:52 10671、solr是全文搜索服务器,专门用户管理索引的。 2 ... -
二十四、通过NRTManager和SearchManager实现近实时搜索
2012-12-21 11:35 1357是否进行实时搜索 实时搜索(近实时搜索) ... -
二十三、高亮显示
2012-12-20 09:24 1022public void lighter01() { ... -
二十二、Tika
2012-12-20 09:24 977Tika是2008年才产生的一个apache的项目,主要用于打 ... -
二十一、Luke
2012-12-20 09:24 828luke是一个查询索引的工具,使用时必须注意:版本要与luce ... -
二十、自定义过滤器
2012-12-20 09:23 888有的应用有些要求,对于某类型的内容即使满足条件了,但是也不 ... -
十七、搜索过滤
2012-12-20 09:23 659public void searcherByFilter(St ... -
十九、自定义QueryParser
2012-12-19 16:28 1231原因: 1、对于某些Quer ... -
十八、自定义评分
2012-12-19 16:18 798public class MyCustomScoreProvi ... -
十六、搜索排序
2012-12-19 12:14 1040public void searcherBySort(Stri ... -
十五、实现简单同义词分词器
2012-12-19 11:41 1269public interface SamewordContex ... -
十四、中文分词器
2012-11-28 13:49 873中文分词器 : Paoding:庖丁解牛分词器。 ... -
十三、自定义Stop分词器
2012-11-28 13:42 771import java.io.Reader; impor ... -
十二、Attribute
2012-11-28 13:20 836Attribute : ... -
十一、分词器的核心类
2012-11-28 13:12 915Analyzer : SimpleAnalyz ... -
十、分页搜索
2012-11-27 17:30 891分页查询有两种实现方式: 1、再查询 ... -
八、其他搜索Query
2012-11-27 10:30 681TermRangeQuery : 字母范围搜索 ... -
七、搜索的简单实现(TermQuery)
2012-11-26 17:12 1016TermQuery只能精确匹配字符串(包括分词后的字符串,不 ...
相关推荐
#### 九、项目实践:构建一个简单的WEB搜索程序 - 结合前面所学的知识点,本部分将指导如何利用Lucene构建一个完整的Web搜索应用。 - 包括前端界面的设计、后端服务的搭建、索引的创建与维护、查询接口的实现等各个...
查询解析器(QueryParser)将用户输入转换为内部查询对象,然后搜索器(Searcher)使用这些查询对象在索引中查找匹配文档。笔记中可能会介绍各种查询类型,如TermQuery、WildcardQuery和PhraseQuery,并讲解评分机制...
#### 九、Lucene的事务性和实时索引构建 Lucene虽然主要用于离线索引构建,但也支持一定程度上的事务性操作和实时索引更新。这对于需要频繁更新索引的应用场景非常重要。 #### 十、其他相关问题 除了以上核心知识...
2. **搜索过程**:搜索时,首先使用QueryParser解析用户输入的查询字符串,生成Query对象;接着,使用索引来查找匹配的文档;最后,使用ScoreDoc进行排序,并返回结果。 ### 二、Analyzer的使用 Analyzer是Lucene...
通过自定义QueryParser或使用Analyzer,我们可以控制查询的解析方式,以满足特定的搜索需求。 二、复杂查询类型 除了基本的单词查询,Lucene还支持更复杂的查询类型,如PrefixQuery(前缀查询)、WildcardQuery...
#### 九、Lucene 的查询对象 在 Lucene 中,查询对象用于表示用户查询的具体形式。Lucene 提供了多种查询对象,如 `TermQuery`、`BooleanQuery`、`PhraseQuery` 等,它们分别对应于不同类型的查询。 #### 十、...
#### 九、Lucene 查询对象 **查询对象**是 Lucene 中用于表示查询逻辑的数据结构,常见的查询对象包括: 1. **TermQuery**:用于匹配特定词条的查询。 2. **BooleanQuery**:支持布尔逻辑运算的查询。 3. **...
之后,可以创建一个索引Reader来读取索引,并利用QueryParser创建查询对象。最后,使用Searcher执行查询并获取结果。 5. **查询语法**:Lucene支持布尔运算符(AND, OR, NOT)、短语查询、前缀查询、范围查询等多种...
- **查询处理**:创建QueryParser,解析用户输入的查询,生成Query对象。 - **执行搜索**:使用IndexSearcher执行Query,获取ScoreDoc数组,表示匹配的文档及其相关性。 - **结果展示**:遍历ScoreDoc,获取匹配...