如何防止WordDelimiterFilterFactory拆分"。"(点)

时间:2015-11-29 08:11:43

标签: solr solr4

我想将WordDelimiterFilterFactory用于以下要求:

input : 500bc

i want to search it with "500bc" or just "500"

因为我使用了 WordDelimiterFilterFactory

<filter class="solr.WordDelimiterFilterFactory"  preserveOriginal="1"/>  

但是现在问题是它也用。(点)标记,就像查询&#34; 6.25&#34;也会给&#34; 25&#34;结果

我如何阻止WordDelimiterFilterFactory使用。(点)进行标记化?

2 个答案:

答案 0 :(得分:2)

我用过

with open("/proc/sys/vm/drop_caches", "w") as drop_caches:
    drop_caches.write("3")

在wdfftypes.txt我打了

  

即可。 =&GT; DIGIT

它如何运作:现在solr会对待。作为数字和6.25都是数字WordDelimiterFilterFactory将不会标记化6.25

答案 1 :(得分:0)

尝试在过滤器声明中添加generateNumberParts="0"参数,以防止过滤器在标点符号上拆分数字。您可以在此处查看更多详细信息:https://cwiki.apache.org/confluence/display/solr/Filter+Descriptions#FilterDescriptions-WordDelimiterFilter