cn.hutool.extra.tokenizer.engine.analysis.AnalysisWord Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hutool-all Show documentation
Show all versions of hutool-all Show documentation
Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
package cn.hutool.extra.tokenizer.engine.analysis;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.util.Attribute;
import cn.hutool.extra.tokenizer.Word;
/**
* Lucene-analysis分词中的一个单词包装
*
* @author looly
*
*/
public class AnalysisWord implements Word {
private static final long serialVersionUID = 1L;
private final Attribute word;
/**
* 构造
*
* @param word {@link CharTermAttribute}
*/
public AnalysisWord(CharTermAttribute word) {
this.word = word;
}
@Override
public String getText() {
return word.toString();
}
@Override
public int getStartOffset() {
if(this.word instanceof OffsetAttribute) {
return ((OffsetAttribute)this.word).startOffset();
}
return -1;
}
@Override
public int getEndOffset() {
if(this.word instanceof OffsetAttribute) {
return ((OffsetAttribute)this.word).endOffset();
}
return -1;
}
@Override
public String toString() {
return getText();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy