Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 何时使用QueryParser与TermQuery?_C#_Lucene_Lucene.net - Fatal编程技术网

C# 何时使用QueryParser与TermQuery?

C# 何时使用QueryParser与TermQuery?,c#,lucene,lucene.net,C#,Lucene,Lucene.net,我正在研究Lucene,无法区分QueryParser和Term Query。看起来他们是一样的。这是真的吗?如果不是,我什么时候应该使用一个而不是另一个呢?不,它们不一样。以下是对每一项的单独说明 1) QueryParser“解析”文本查询并构建Lucene查询对象。它接受文本查询并基于该信息构建Lucene查询对象 它描述了QueryParser解析文本输入并构建相应查询对象的方式 2) TermQuery是QueryParser的可交付成果,即它是Lucene查询的一种类型。Lucene

我正在研究Lucene,无法区分QueryParser和Term Query。看起来他们是一样的。这是真的吗?如果不是,我什么时候应该使用一个而不是另一个呢?

不,它们不一样。以下是对每一项的单独说明

1) QueryParser“解析”文本查询并构建Lucene查询对象。它接受文本查询并基于该信息构建Lucene查询对象

它描述了QueryParser解析文本输入并构建相应查询对象的方式

2) TermQuery是QueryParser的可交付成果,即它是Lucene查询的一种类型。Lucene支持多种查询,如布尔查询、模糊查询等。。TermQuery是Lucene查询最基本的形式

什么时候用什么

  • 几乎所有的应用程序,从简单到高级,都使用QueryParser。只需传入文本输入,它就会根据该输入构建相应的Lucene查询对象

  • 您始终可以使用TermQuery构造函数构建自己的查询。人们通常在尝试不同的查询类型时构建自己的Lucene查询对象


您可以查看本教程,其中包含使用Lucene时需要了解的所有基本知识:

不,它们不一样。以下是对每一项的单独说明

1) QueryParser“解析”文本查询并构建Lucene查询对象。它接受文本查询并基于该信息构建Lucene查询对象

它描述了QueryParser解析文本输入并构建相应查询对象的方式

2) TermQuery是QueryParser的可交付成果,即它是Lucene查询的一种类型。Lucene支持多种查询,如布尔查询、模糊查询等。。TermQuery是Lucene查询最基本的形式

什么时候用什么

  • 几乎所有的应用程序,从简单到高级,都使用QueryParser。只需传入文本输入,它就会根据该输入构建相应的Lucene查询对象

  • 您始终可以使用TermQuery构造函数构建自己的查询。人们通常在尝试不同的查询类型时构建自己的Lucene查询对象


您可以查看本教程,其中包含使用Lucene时需要了解的所有基本知识:

明白了。感谢您的深入回答。明白了。谢谢您的深入回答。