1

我有多语言文档记录可以用 lucene 进行索引。也就是说,每个文档记录都是一种语言,但有不同的语言记录。我打算将它们保存在一个索引中,以便我可以使用多语言查询进行搜索。目前,文档记录在一个数据输入文件中,如下所示:

<DOCID>1<\DOCID>
<LANGUAGE>CHINESE<\LANGUAGE>
<TEXT>中文内容<\TEXT>

<DOCID>2<\DOCID>
<LANGUAGE>ENGLISH<\LANGUAGE>
<TEXT>Some English text<\TEXT>

我的问题是:有没有办法通过一个索引编写器对同一字段使用不同的分析器?或者我应该将文档记录拆分为两个不同语言的输入文档以应用不同的索引编写器但附加到同一个索引?

提前感谢您的建议!

4

1 回答 1

1

您可以在调用IndexWriter.addDocument时提供您打算用于文档的分析器。

但是,您可能会从将不同的语言文本拆分到不同的字段中受益更多,这将防止命中错误的语言,并允许您AnalyzerWrapper在检测到正确的语言后创建一个分配适当的分析器。

于 2013-07-21T09:47:12.830 回答