gpt4 book ai didi

elasticsearch - 弹性通配符搜索不适用于空格

转载 作者:行者123 更新时间:2023-12-04 09:20:09 25 4
gpt4 key购买 nike

我正在尝试使用通配符过滤器从 Elasticsearch 索引进行搜索,它可以正常工作,直到我在搜索条件中使用“空格”。

例如:如果弹性指数中的值为“这是测试值”

当我使用搜索值时:“This*”--> 工作,获取值当我使用搜索值时:“这是*”--> 不起作用,导致零匹配

我的代码如下

查询构建器。通配符查询(
ElasticSearchUtil.FIELDNAME、searchValue.toLowerCase())

我如何处理空间并使我的搜索成功?

问候用户界面

最佳答案

通配符查询仅适用于单个标记。您想要做的是找到一个 token ,后跟另一个 token ,第二个 token 由前缀指定。这可以通过使用 match phrase prefix 来实现询问。您的查询将如下所示:

QueryBuilders.matchPhrasePrefixQuery(ElasticSearchUtil.FIELDNAME,searchValue)

请注意,searchValue 末尾不应有“*”。

关于elasticsearch - 弹性通配符搜索不适用于空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29377705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com