[英]Search across fields in Lucene
我和Lucene是一个完全无聊的人,到目前为止,他是一个巨大的粉丝。
我现在正在寻找一些有关如何存储数据和通过c#和dotnet搜索的资源。 任何LINQ样本对我来说都是一个很大的好处。
特别是如果我有一个文档有两个字段定义为标题和描述,我怎么能在两个字段中搜索?
在下面的示例中,我想搜索标题和说明字段。
例如:
doc = new Document();
text = "Oven leek pie";
doc.Add(new Field("title", text, Field.Store.YES, Field.Index.TOKENIZED));
doc.Add(new Field("instructions", "Bake for 40 minutes", Field.Store.YES, Field.Index.TOKENIZED));
iwriter.AddDocument(doc);
接着;
// Parse a simple query that searches for "text":
Lucene.Net.QueryParsers.QueryParser parser = new QueryParser("title", analyzer);
Query query = parser.Parse("baked bacon and leek pizza");
string[] fields = new string[2];
fields[0] = "title";
fields[1] = "instructions";
Lucene.Net.QueryParsers.MultiFieldQueryParser multiFieldParser = new MultiFieldQueryParser(fields, analyzer);
Query multiFieldQuery = multiFieldParser.Parse("20");
Hits multiHits = isearcher.Search(multiFieldQuery);
有很多方法可以搜索Lucene的各个领域。 Sam Doshi在另一个StackOverflow问题的答案中描述了几个问题: 如何在QueryParser中合并多个字段?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.