Java Lucene 3.5在搜索时不支持中文-俄语-朝鲜语

Java Lucene 3.5在搜索时不支持中文-俄语-朝鲜语,java,lucene,Java,Lucene,我正在使用Lucene 3.5标准分析器进行索引和搜索。它适用于除汉语、日语和韩语以外的所有语言。我尝试了CJK分析仪和中文分析仪。但仍然不起作用。正在正确创建索引。我们已经用Luke工具验证了这一点。但无法使用Luke工具和使用分析器的代码搜索上述语言单词。任何解决办法 伊拉克航空公司 +name:伊拉克航空公司~0.9 This is the lucene query generated by the analyzer for this chines

我正在使用Lucene 3.5标准分析器进行索引和搜索。它适用于除汉语、日语和韩语以外的所有语言。我尝试了CJK分析仪和中文分析仪。但仍然不起作用。正在正确创建索引。我们已经用Luke工具验证了这一点。但无法使用Luke工具和使用分析器的代码搜索上述语言单词。任何解决办法

伊拉克航空公司               

+name:伊拉克航空公司~0.9     This  is the lucene query generated by the analyzer for this chinese word. But not returning result. But other languages and its corresponding query is returning results

对于中国人来说,有许多有用的第三方分析器,例如:

  • mmseg4j
  • 安苏赛格
  • imdict中文分析器
  • 我建议使用IK analyzer,例如: 将此项添加到您的依赖项:

        <dependency>
            <groupId>com.janeluo</groupId>
            <artifactId>ikanalyzer</artifactId>
            <version>2012_u6</version>
        </dependency>
    
    输出为: 开始→0

    伊拉克
    
    end→3
    
    start→3
    
    航空公司
    
    end→7
    
    start→3
    
    航空
    
    end→5
    
    start→5
    
    公司
    
    end→7
    
    日语:


  • 您是否在查询期间使用任何分析器?显示我们的索引和查询字符串的一些示例。使用示例编辑问题感谢更新。。。。。公共抽象令牌流令牌流(String fieldName,Reader Reader)方法令牌流的第二个参数是Reader right?当我复制您的文件时,这里出现编译错误code@vishnu,您使用的是哪个版本。请删除任何与Lucence相关的库,并仅使用ik的依赖项。Ik包含lucence libsikanalyzer-2012_u6,它依赖于lucene core 4.7.2。这里我们使用的是lucene 3.5。这可能就是问题所在。如果不使用第三方分析器,您确定我们无法搜索汉字吗?lucense从3.5升级非常耗时,因为其实现中存在巨大的代码差异。对于3.5 lucene本身,是否有其他方式支持这些角色?
    伊拉克
    
    end→3
    
    start→3
    
    航空公司
    
    end→7
    
    start→3
    
    航空
    
    end→5
    
    start→5
    
    公司
    
    end→7