diff --git a/src/main/java/org/elasticsearch/index/analysis/PinyinTokenizer.java b/src/main/java/org/elasticsearch/index/analysis/PinyinTokenizer.java index 66c8503..98fc567 100644 --- a/src/main/java/org/elasticsearch/index/analysis/PinyinTokenizer.java +++ b/src/main/java/org/elasticsearch/index/analysis/PinyinTokenizer.java @@ -293,6 +293,10 @@ private int parseBuff(StringBuilder buff, int buffSize, int buffPosition) { @Override public final void end() throws IOException { super.end(); + if(!config.ignorePinyinOffset){ + ++lastOffset; + offsetAtt.setOffset(correctOffset(lastOffset), correctOffset(lastOffset)); + } } @Override @@ -312,6 +316,7 @@ public void reset() throws IOException { candidate.clear(); source = null; lastIncrementPosition = 0; + lastOffset = 0; }