我正在尝试构建一个 Solr 查询以在“type”和“desc”字段中搜索术语“tree”。
到目前为止,这是我的尝试:
?q=tree
&defType=dismax
&qf=type desc
但是,这仅适用于完全匹配。它没有找到“树屋”或“大树”。
我应该如何修改搜索查询?
我希望您的查询应该与单词“treehouse”“big-tree”匹配,然后您必须相应地在该字段上应用正确的字符串标记器,
要匹配单词树屋,您可能必须使用 DictionaryCompoundWordTokenFilterFactory
要匹配 big-tree ,您可以使用WordDelemeterFilterFactory
参考这个
在这种情况下也可以使用术语组件:
/terms?terms.fl=type&terms.fl=desc&terms.regex=tree.*
参考-> https://cwiki.apache.org/confluence/display/solr/The+Terms+Component