我想配置我的 Solr 搜索引擎,以便获得与我输入的搜索词完全匹配的结果。
例如。 “taxes”应该返回带有“taxes”的文档,而不是“tax”、“taxation”等。
任何帮助或提示将不胜感激。
我假设您的字段是 TextField,默认情况下 solr 对此字段进行模糊搜索。您想要的是将字段设置为字符串字段并且不添加标记器,然后您将获得完全匹配。
您甚至可以将精确搜索与模糊搜索结合起来,并使用 DisMax 来提高相对权重。
示例(schema.xml):
<field name="name" type="string" indexed="true" stored="false" required="true" />
<field name="nameString" type="string" indexed="true" stored="false" required="true" />
<copyField source="name" dest="nameString"/>
示例(solrconfig.xml):
<requestHandler name="accounts" class="solr.SearchHandler">
<lst name="defaults">
<str name="defType">dismax</str>
<str name="qf">
nameString^10.0 name^5.0 description^1.0
</str>
<str name="tie">0.1</str>
</lst>
</requestHandler>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)