是否可以使用AWS Cloudsearch配置标记分隔符?

时间:2015-02-09 22:06:46

标签: amazon-web-services amazon-cloudsearch

我的Cloudsearch索引目前没有为one-two three返回任何结果,但它会为one two three返回一个(正确)结果(并且在搜索{{1}时也会在结果中正确包含)等等)

我的理解是,这是因为可搜索的短语被分解为他们的标记(单词),其中空格和标点符号充当分隔符。因此,two threeone会成为单独的令牌,但two不是有效令牌,因此找不到任何结果。来自Cloudsearch docs

  

在标记化期间,使用Unicode文本分割算法中定义的分词规则,将字段中的文本流拆分为可检测边界上的单独标记。

该Unicode文件is here

我希望能够搜索one-two并找到相关结果,以及其他一些标点字符,例如one-two three。是否可以使用Cloudsearch进行配置?

1 个答案:

答案 0 :(得分:0)

我刚刚意识到一个简单的解决方案,虽然在技术上不能回答我的问题,但工作正常。我只需要在将查询字符串发送到云搜索之前对其进行预处理,方法是将-/或我想要的任何字符替换为单个空格。

这样,one-two three实际上会搜索one two three,并返回正确的结果。