在弹性搜索特殊字符

问题描述:

我在我的索引中有一个字段name$$$ LTD 标准分析器应用于此字段。在弹性搜索特殊字符

我试图用下面的值来搜索记录,但没有找到。

http://localhost:9200/my-index/_search?q=name:$$$

在当我在寻找name:"$$$ LTD"同时它返回一个包含LTD仿佛$$$忽略所有记录。

我很确定索引中存在适当的值。那么我该如何搜索它?

UPD。 映射相关搜索领域:

{“name":{"type":"string","boost":4.0,"analyzer”:”nameAnalyzer"} 

{"nameAnalyzer":{"filter":["lowercase"],"type":"custom","tokenizer":"standard"}}} 
+0

你可以分享你的映射,即运行的时候'卷曲-XGET本地主机你会得到什么:9200/MY-index'? – Val

+0

索引中有很多字段。我已经为字段“name”添加了映射详细信息。让我知道是否有其他需要。 – Rumoku

在它的URL parameters.So使用编码不能使用特殊的人物造型($),防爆。 $的编码是%24,所以使用这种方式。

http://localhost:9200/my-index/_search?q=name:%24%24%24 
+0

我试过了。不起作用。 – Rumoku

已解决。 标准记号器剥去特殊字符。

我必须定义不同类型的记号器(可能是基于空间的)。 关于这个问题的更多信息,页面上找到: https://discuss.elastic.co/t/how-to-index-special-characters-and-search-those-special-characters-in-elasticsearch/42506/2