繁体   English   中英

搜索Lucene的各个领域

[英]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.

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