我正在使用Apache Solr,我尝试通过此查询找到一个项目:
server_url?debug=true
&defType=edismax
&fq=custom_type:custom
&indent=true
&limit=10
&page=0
&q=custom_words:contact
&wt=json
其中custom_words - 它是架构中的一种类型,我需要搜索。 它看起来像这样:
{
"id": "1",
"url": "12",
"custom_type": [
"custom"
],
"custom_name": "Contact Us",
"custom_words": [
"contact us",
"Contact Us"
],
"language": "en",
},
如果我想收到以下查询的此项,我该如何更改查询:“contact”,“us contact”。 我的意思是,输入的单词的顺序及其编号不重要,不必记下custom_words中的所有可能组合 有可能吗?
答案 0 :(得分:1)
将自定义单词字段设为带有StandardTokenizer或WhitespaceTokenizer的文本字段,以及小写过滤器。这会将contact us
分成两个单独的标记contact
和us
。搜索contact
时,Lucene将与contact
令牌匹配,并将文档返回给您。