我有一个包含很多街道的索引。索引如下所示:
Mainstreet 42
Some other street 15
Foostr. 9
默认搜索查询如下所示:
+QUERY_STRING*
因此查询foo
(sent as +foo*
) 或foostr
(sent as +foostr*
) 会得到Foostr. 9
,这是正确的。但是查询foostr.
(发送到 Elasticsearch 作为+foostr.*
)没有结果,但为什么呢?
我使用标准分析器和没有特殊选项的查询字符串。(使用 时也返回 0 个结果http://127.0.0.1:9200/test/streets?q=+foostr.*
)。
顺便提一句。这:(http://127.0.0.1:9200/test/streets?q=+foostr.
与上面没有星号的相同)找到正确的结果
问题:
为什么会这样?
如何避免这种行为?