Lucene4.3开发之第八步之渡劫初期(八)
要使用高亮,首先就得从索引时开始,因为需要高亮的字段,需要准确的获取位置信息,以及一些偏移量,如果信息不准确,那么可能在结果中,就会出现一些莫名其妙的错位,反映到网页上就是标注了不该标注的字,没有标注该标的内容,所以这一点还是需要注意一下,在索引的时候,我们需要使用项向量记录各个token的位置信息
Please read full article from Lucene4.3开发之第八步之渡劫初期(八)
要使用高亮,首先就得从索引时开始,因为需要高亮的字段,需要准确的获取位置信息,以及一些偏移量,如果信息不准确,那么可能在结果中,就会出现一些莫名其妙的错位,反映到网页上就是标注了不该标注的字,没有标注该标的内容,所以这一点还是需要注意一下,在索引的时候,我们需要使用项向量记录各个token的位置信息
- FieldType type=new FieldType(TextField.TYPE_STORED);
- type.setStoreTermVectorOffsets(true);//记录相对增量
- type.setStoreTermVectorPositions(true);//记录位置信息
- type.setStoreTermVectors(true);//存储向量信息
- type.freeze();//阻止改动信息
- Field field=new Field("字段名", "值", type);//示例
类 | 释义 |
SimpleHTMLFormatter | 常用的格式化Html标签器,提供一个构造函数传入高亮颜色标签,默认使用黑色 |
TokenSources | 提供静态方法,支持从数据源中获取TokenStream,进行token处理 |
Highlighter | 负责获取匹配上的高亮片段 |
QueryScorer | 对命中结果进行评分操作 |
Fragmenter | 将原始字符串拆分成独立的片段 |
NullFragmenter | 对较短的域进行整体高亮 |
FastVectorHighlighter | 基于快速高亮 |
Encoder | 提供一些实现类,对html文本操作,如,去掉一些特殊匹配符号<,> and so on,及一些其他的非ASCII特殊字符。 |
No comments:
Post a Comment