Solr搜索文本中的多个关键字
全部 我正在写一个应用程序,我想用一组关键字扫描一些文本。我使用SOLR和索引我的关键字作为索引关键字还包含各种字段,如标题,描述等 现在的问题是,如何通过SOLR查询用关键字搜索自由文本数据 例如: 我有一个关键字为单词1的Solr项目,如果自由文本等于单词1之类的东西,我应该返回这个项目Solr搜索文本中的多个关键字,solr,Solr,全部 我正在写一个应用程序,我想用一组关键字扫描一些文本。我使用SOLR和索引我的关键字作为索引关键字还包含各种字段,如标题,描述等 现在的问题是,如何通过SOLR查询用关键字搜索自由文本数据 例如: 我有一个关键字为单词1的Solr项目,如果自由文本等于单词1之类的东西,我应该返回这个项目 谢谢。我不确定我是否完全理解了您的问题,但如果您询问solr在查询“bla-bla word 1 bla-bla”时是否会检索文档:“word 1”,则这取决于您的模式 默认运算符是通过模式中的设置定义的
谢谢。我不确定我是否完全理解了您的问题,但如果您询问solr在查询“bla-bla word 1 bla-bla”时是否会检索文档:“word 1”,则这取决于您的模式 默认运算符是通过模式中的设置定义的
通常默认运算符是,它将检索文档,但我建议您查看一下。它取决于在索引数据时使用的字段类型。 FieldType由analyzer和两个analyzer组成。 一个用于查询,另一个用于索引 如果索引分析器具有正确的标记器和过滤器,它将以正确的方式索引键。 查询分析器也是如此 fieldType的一个示例
<fieldType name="text_rev" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>