繁体   English   中英

在SOLR 4.1中将termfreq(field,term)函数用于带空格的短语

[英]Use termfreq(field,term) function for phrase with space in SOLR 4.1

我正在使用termfreq(field,term) SOLR函数 这有效:

?fl=product_name,termfreq(product_name,"iphon")&q=iphone 4s     //Found freq

但是问题是要让“ iphone 4s”这样的术语带有空格

?fl=product_name,termfreq(product_name,"iphon 4s")&q=iphone 4s  //Return 0 freq

尽管文档中存在该术语(短语),但返回0 freq。 因此,问题是,我可以将termfreq()函数与“ iphone 4s”之类的完整短语一起使用吗?

我正在使用SOLR 4.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进行索引,这不会标记单词,并且短语应该可用。
否则,您可以检查用于将单词分组的带格选项。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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