我想知道什么恰好适合变量类字符串 QueryParser。在文档中是这样写的:
但是我没明白你的意思!
考虑到您的文档有多个字段,默认字段是您的查询将被搜索的字段。
例如,如果您有如下文件
document{
author:"Erik Hatcher and Otis Gospodnetić"
BookTitle:"Lucene In Action"
Description:"The book covers end to end apis of lucene"
}
现在假设您搜索单词“Lucene”并且您的默认字段是“BookTitle”,那么这就是您的查询将匹配的位置,并且该文档将成为搜索结果的一部分。但是,如果您搜索单词“book”并且您的默认字段是“BookTitle”,那么您将不会得到任何结果。
此处定义的字段名称将是您未在查询本身中指定字段时使用的字段。
您可能更习惯于在查询中明确定义要搜索的字段,例如:
content:(relevant terms) title:mytitle
默认字段根本没有影响,但我可以输入一个没有定义任何明确字段的查询:
some terms
查询解析器会将其理解为在默认字段中进行搜索,例如:
defaultfield:some defaultfield:terms
同样,您可以将两者混合在一起,例如:
title:mytitle other terms
查询解析器将其解释为:
title:mytitle defaultfield:other defaultfield:terms
Lucene查询解析器语法文档描述了默认字段的使用。