diff --git a/src/main/java/org/wltea/analyzer/core/AnalyzeContext.java b/src/main/java/org/wltea/analyzer/core/AnalyzeContext.java index 982882e06fa796b2cb85b6d7f7fbd926c18b046f..5bf1ac905b2341be8e9fad1d0a0cf897e2b37961 100644 --- a/src/main/java/org/wltea/analyzer/core/AnalyzeContext.java +++ b/src/main/java/org/wltea/analyzer/core/AnalyzeContext.java @@ -267,6 +267,15 @@ class AnalyzeContext { Lexeme l = path.pollFirst(); while(l != null){ this.results.add(l); + //字典中无单字,但是词元冲突了,切分出相交词元的前一个词元中的单字 + int innerIndex = index + 1; + for (; innerIndex < index + l.getLength(); innerIndex++) { + Lexeme innerL = path.peekFirst(); + if (innerL != null && innerIndex == innerL.getBegin()) { + this.outputSingleCJK(innerIndex - 1); + } + } + //将index移至lexeme后 index = l.getBegin() + l.getLength(); l = path.pollFirst();