代码之家  ›  专栏  ›  技术社区  ›  Nick

使用Lucene.net索引多语言内容

  •  4
  • Nick  · 技术社区  · 17 年前

    我用 Lucene.net

    LuceneId - unique id for Lucene (TypeId + ItemId)
    TypeId   - the type of text (eg. page content, product, public doc etc..)
    ItemId   - the web page id, document id etc..
    Text     - the text indexed
    Title    - web page title, document name etc.. to display with the search results
    

    我有以下选项来调整它以提供多语言内容:

    1. 为每种语言创建单独的索引。例如Lucene enGB、Lucene frFR等。。
    2. 保留一个索引,并向其添加一个额外的“语言”字段以过滤结果。

    哪一个是最好的选择?或者还有其他选择吗?我以前没有使用过多个索引,所以我倾向于使用第二个索引。

    2 回复  |  直到 14 年前
        1
  •  3
  •   cherouvim    16 年前

    我有[2],但我有一个问题,我不能根据语言使用不同的分析器。我已经组合了我想要的语言的停止词,但是我失去了分析器提供的更高级功能,比如词干分析等。

        2
  •  2
  •   Roxanne    13 年前

    您可以取消选项1和2。
    如果您有字段“ 文本 “可能包含阿拉伯语或英语内容==>

    • 为“”创建两个字段 :1个字段 文本 ,使用标准分析器和另一个分析器进行索引/搜索 文本 ,使用arabicAnalyzer。为了实现这一点,您可以使用 PreFieldAnalyzerWrapper