【发布时间】:2010-04-29 02:19:15
【问题描述】:
我有一个 Lucene 索引,其中包含多个文档。每个文档都有多个字段,例如:
Id
Project
Name
Description
Id 字段将是一个唯一标识符,例如 GUID,Project 是用户的 ProjectID,用户只能查看其项目的文档,Name 和 Description 包含可以包含特殊字符的文本。
当用户在名称字段上执行搜索时,我希望能够尝试尽可能匹配,例如:
First
两者都会返回:
First.Last
和
First.Middle.Last
名称也可以是:
Test (NameTest)
如果用户在哪里输入“Test”、“Name”或“(NameTest)”,那么他们可以找到结果。
但是,如果我说 Project 是“ProjectA”,那么它需要完全匹配(不区分大小写的搜索)。 Id 字段也是如此。
我应该将哪些字段设置为标记化,哪些设置为未标记化?另外,我应该考虑使用一个好的分析器来实现这一点吗?
我一直在努力确定实现所需搜索的最佳途径。
【问题讨论】:
标签: c# indexing lucene lucene.net