【问题标题】:Do (or should) Search Engines Analyze Queries in Quotes?搜索引擎是否(或应该)分析引号中的查询?
【发布时间】:2017-03-18 19:19:22
【问题描述】:

当用户在引号中输入搜索词时,搜索引擎应该准确搜索引号内的内容,还是应该像不带引号的查询一样对查询进行一些分析?

例如,查询"U.S. of America" 是否应该匹配US of America?同样,查询"foo-bar" 是否应该匹配foo bar?当这些查询不在引号中时,我会假设答案是肯定的,它们应该匹配。但是,当放在引号中时,用户暗示他们正在寻找完全匹配的内容。问题是如何准确。

我知道这更像是一种设计选择而不是编程选择,但我该如何回答这个问题呢?如果被问到,我的用户可能不知道我在说什么。这里有一个简单的答案吗?

【问题讨论】:

  • 这不是一个主观的问题。可能你不会写一些与 Stackoverflow 相关的技术问题
  • User Experience 是一个相关的 SE 站点。

标签: search elasticsearch full-text-search search-engine query-parser


【解决方案1】:

对于开箱即用的解决方案,请查看simple-query-string-query。您会注意到它考虑了 qoutes。

与 'foo-bar' vs 'foo bar' 和 'U.S.' 相关与“美国”。这是由索引上的分析器和标记器确定的。这些定义了如何将字符串拆分为标记以及如何修改甚至忽略标记。除非您指定自定义内容,否则使用 standard analyzerthe standard tokenizer。检查您的案件将如何处理的链接。

了解在进行短语匹配时如何考虑标记位置see this post

【讨论】:

  • 我认为您的意思是引号不应影响分析或标记化。所以在那种情况下"foo-bar" 将匹配foo bar,但前提是不带引号的查询也匹配,对吧?
  • 引用不应影响分析或标记化。正确。 所以在这种情况下,“foo-bar”将匹配 foo bar,但前提是不带引号的查询也匹配,对吧? 正确。带引号的查询更复杂,并查看标记位置。这里有更多信息。 elastic.co/guide/en/elasticsearch/guide/current/…
猜你喜欢
  • 1970-01-01
  • 2021-09-23
  • 1970-01-01
  • 1970-01-01
  • 2011-10-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-12
相关资源
最近更新 更多