繁体   English   中英

Lucene搜索日本字符

[英]Lucene Search for japanese characters

我已经为我的应用程序实现了lucene,除非你介绍了像日语这样的东西,否则它的效果非常好。

问题是,如果我有日语字符串こんにちは,このバイネイです我用こ搜索是第一个字符比它效果好,而如果我在搜索令牌搜索中使用多个日语字符(こんにち)失败并且有没找到文件。

lucene是否支持日文字符? 让它运作的设置是什么?

lucene的内置分析仪不支持日语。

你需要安装一些像sen这样的分析器,它是mecab的 java端口,非常受欢迎的日本分析器,它的速度很快。

有两种子类型叫做

  1. CJKAnalyzer,支持中文和韩文,并使用bi-gram方法
  2. JapaneseAnalyzer,只支持日语,使用Morphological Analyzer,应该非常快。

我不认为可以使用适用于所有语言的分析器。 问题是,不同的语言有关于单词边界和词干(例如,泰语不会在所有单独的单词使用空格)不同的规则。 或者,如果有,我当然不想成为维护者!

您需要做的是将文本块“标记”为一种语言或另一种语言,并使用正确的分析器来处理该特定语言。 您可以通过进行角色分析来尝试“自动”检测语言(即主要使用日语片假名的文本很可能是日语)

您应该使用最近在Lucene 3.6.0中发布的新日本分析仪。 它们基于最近在LUCENE-3305中捐赠给Lucene的优秀Kuromoji形态分析仪。

截至撰写本文时,文档有点稀疏,所以这里还有一些链接......

  • 如果您使用Solr,这是一个可以在Websolr运行示例模式
  • 我在2012年4月20日herokujp聚会上的演讲中进行了全文搜索,重点是分析日语。

(这完全适用于Lucene的Java版本。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM