查找分析字段包含斜杠和下划线的文档

时间:2016-11-02 13:28:23

标签: elasticsearch

我的文档有一个分析字段url,其内容与此类似

http://sub.example.com/data/11/222/333/filename.txt

我想查找filename以下划线开头的所有文档。我尝试了多种方法(通配符,模式,query_string,span查询),但我从来没有得到正确的结果。我希望这是因为下划线是一个术语分隔符。我怎么写这样的查询?是否有可能在没有改变领域的情况下进行分析(目前我不能做)?

它的ElasticSearch 1.5,但在可预见的未来我们将迁移到至少2.4。

1 个答案:

答案 0 :(得分:2)

你或许可以编写script来做那件事,但这会非常慢。

您最好的选择(即使您说现在不能)正在将字段从analyzed更改为multi-field。通过这种方式,您可以同时使用已分析和未分析的版本进行工作。

您可以使用Reindex API将旧版本的所有数据迁移到新版本(假设您使用的是ES 2.3或更高版本)。