Search 对SOLR 4.1中带空格的短语使用termfreq(字段,术语)函数
我正在使用termfreq(字段、术语)。这项工作:Search 对SOLR 4.1中带空格的短语使用termfreq(字段,术语)函数,search,solr,analyzer,term,phrase,Search,Solr,Analyzer,Term,Phrase,我正在使用termfreq(字段、术语)。这项工作: ?fl=product_name,termfreq(product_name,"iphon")&q=iphone 4s //Found freq 但问题是要用“iPhone4S”这样的词来形容空间 ?fl=product_name,termfreq(product_name,"iphon 4s")&q=iphone 4s //Return 0 freq 返回0 freq,尽管该术语(短语)存在于文档中。所以,问题
?fl=product_name,termfreq(product_name,"iphon")&q=iphone 4s //Found freq
但问题是要用“iPhone4S”这样的词来形容空间
?fl=product_name,termfreq(product_name,"iphon 4s")&q=iphone 4s //Return 0 freq
返回0 freq,尽管该术语(短语)存在于文档中。所以,问题是,我可以将termfreq()函数与完整短语(如“iphone 4s”)一起使用吗?如何使用
我正在使用Solr4.1。现场测试分析仪为
<fieldType name="text_ws" class="solr.TextField">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
领域是
<field name="product_name" type="text_ws" indexed="true" stored="true"/>
当您使用
WhitespaceTokenizerFactory
时,术语iphone 4s
将不作为术语存在。您可以使用KeywordTokenizerFactory进行索引,它不会标记单词,短语应该可用。
否则,你可以检查木瓦选项,这将为你分组的话 谢谢你的回答。KeywordTokenizerFactory将整个文本字段视为单个标记,这是一个更大的问题:)我将尝试以下方法