问题标签 [search-suggestion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3201 浏览

android - 为 Actionbar SearchView 创建异步 ContentProvider

我的 ActionBar 中有一个 SearchView,它与 ContentProvider 连接以提供搜索建议。这些建议不是来自数据库(与 ContentProvider 一样),而是来自 Web 服务。这就是为什么我必须异步处理 ContentProvider 的光标。到目前为止,我的代码有效,但搜索建议始终是“后面”一个字母:

输入后"the",我得到了之前搜索的所有结果 =>"th"

输入后"they",我得到了之前搜索的所有结果 =>"the"

如何告诉 SearchView 游标中有新结果?我查看了 ContentObserver 和 ContentResolver().notifyChange(),但它们实际上不可能在 SearchView 的上下文中使用。

到目前为止,这是我的代码。重要的部分在 ContentProvider 的 onResponse-callback 中。我创建了一个新的 MatrixCursor 并使用它来覆盖成员 MatrixCursor。

AutocompleteSuggestionProvider 扩展了 ContentProvider

AndroidManifest

可搜索的.xml

0 投票
0 回答
744 浏览

search - 如何从片段中实现 SearchView 中的自定义建议

我有一个带有 3 个片段的视图寻呼机,其中一个片段有 searchview 小部件,我知道我不能实现标准搜索界面,所以我实现了类似这样的东西,但是如何在 SearchView 中实现自定义建议

0 投票
1 回答
2300 浏览

elasticsearch - 该完成建议器使用什么 Elasticsearch Analyzer?

我对 Elasticsearch 非常陌生,目前正试图让我的头脑围绕分析器来了解completion suggester

我有一个这样的地方列表:

  • 伦敦
  • 伦敦眼
  • 伦敦地牢
  • ETC...

通过将完成建议器的映射设置为以下内容:

当建议者的文本输入只是字母时,我现在能够返回所有上述三个建议L

但是,我希望The London Eye在用户键入单词时返回,eye并且同样The London Dungeon在用户键入时返回Dungeon(当然对于这些术语的任何前缀)

在今天的大部分时间里,我一直在使用不同的分析器和设置,但没有成功。

我需要使用什么样的分析仪来实现上述目标?

0 投票
1 回答
17147 浏览

java - 如何使用 Lucene 的新 AnalyzingInfixSuggester API 实现自动建议?

我是 Lucene 的新手,我想实现自动建议,就像 google 一样,当我输入像 'G' 这样的字符时,它会给我一个列表,你可以自己试试。

我已经在整个网络上搜索过。没有人这样做过,它在包中为我们提供了一些新工具建议

但我需要一个例子来告诉我该怎么做

有没有人可以帮忙?

0 投票
1 回答
227 浏览

c# - 与加权字段进行模糊比较(建议类似实例)

今天我遇到了一项任务,并喜欢用干净的代码解决它,所以决定与全班其他人分享它会很酷——但是,嘿,让我们以问题的形式保留它。

任务:

给定一个类型实例T(源)和一个类型实例集合T(可能的建议),提供与源相似的建议,按相似度排序,完全排除相似度低于某个阈值的建议。

相似性将是实例的多个字段的模糊字符串比较,每个字段都有一个重要性权重。

示例输入:

源实例:

可能的建议:

字段的重要性:

  • 答:30%
  • 乙:50%
  • C: 20%

示例输出:

请注意,可能的建议Bye;world;and fairwell根本不在这里,因为它不符合最小相似度阈值(假设阈值至少是50%加权相似度)

第一个结果与源最相似,即使该C字段与源根本不相似,因为我们给出C了低至 的权重20%,而其他两个权重更大的字段非常相似(或精确匹配)到源。

模糊比较旁注

用于比较的算法string a可以string b是任何已知的模糊比较算法,这不是重点。

那么如何将可能的建议列表变成实际的有序建议列表呢?(哦,上帝,请帮助,等等)

0 投票
3 回答
1559 浏览

angularjs - AngularJS + UI Bootstrap Typeahead 实现问题

我正在尝试通过采用此代码来使用我的 Web Api 控制器实现 Typeahead,效果很好:

HTML

app.js 中的控制器

但是,当我更改return $http.jsonp("http://gd.geobytes.com/AutoCompleteCity?callback=JSON_CALLBACK &filter=US&q=" + cityName)为调用自己的 WebApi 控制器return $http.jsonp("api/airports/" + cityName)时,它会停止工作。

但是如果我直接调用我的 Web Api,就像http://mysite:80/api/airports/los它返回这个 json 一样:

这与返回的格式完全相同http://gd.geobytes.com/AutoCompleteCity?filter=US&q=los

请指教。

0 投票
1 回答
288 浏览

android - Android:在搜索小部件上的自定义建议图标上添加来自 url 的图像

正如标题所说,我想在搜索小部件上添加一些来自 url 的图像作为自定义建议的图标。我在 android.com 上的这个参考资料中看到我必须使用 Uri,但我不知道如何使用。

0 投票
2 回答
1065 浏览

solr - Solr smart next word Suggester(最常出现的词)

我正在将 solr 与 liferay 集成,我想实现智能的下一个单词建议器。例如,如果我的文件标题如下:

  • Solr是世界上最好的搜索引擎
  • Solr 在 lucene 搜索引擎上实现
  • Solr 是全球 80% 的开发人员用作搜索引擎的 lucene
  • lucene 不需要在应用服务器上单独安装进行搜索实现

所以如果我输入Solr,我应该得到以下结果:

  1. 索尔
  2. solr lucene
  3. Solr 搜索
  4. 太阳能引擎
  5. 太阳能世界

等等

如果我输入lucene,我应该得到以下结果:

  1. Lucene
  2. Lucene 搜索
  3. Lucene 引擎
  4. Lucene 世界

等等

我尝试了很多示例并且它们有效,但我面临以下问题:

  • 如果我从前缀Solr开始,建议有效,如果我开始输入任何中间词,它就不起作用
  • 我得到完整的句子而不是下一个最佳匹配词。

请帮忙。提前致谢 :)

0 投票
0 回答
396 浏览

elasticsearch - Elasticsearch - 如何更改短语建议者直接生成器的排序类型?

我正在尝试使用短语建议器创建你的意思功能。当我将文本提供给术语建议者并按分数对结果进行排序时,我会在基于术语的建议的顶部获得最想要的结果。但是结合这些单独的结果对我来说似乎毫无意义,因为我们有短语建议。但是,当我尝试使用与我之前的术语建议器相同的参数的短语建议器时,我没有得到想要的结果。

上面显示了从术语建议者那里获得的术语频率和分数。

以下是我从第一句话中得到的:

短语建议者似乎使用术语频率来组合来自直接建议者的内容。但是,正如您在上面看到的,这不是想要的结果,在这种情况下,真正好的建议会排在第三位。有没有办法改变这种行为并将基于术语的建议结合在短语建议器中的分数?

0 投票
1 回答
712 浏览

elasticsearch - 在 MultiSearch 查询中使用 Nest Phrase Suggester

我对多种类型有一个 MultiSearch 查询,每种类型有多个字段。我看到我可以将 .SuggestPhrase() 添加到单个字段上的单个 SearchDescriptor 中,但不能添加到整个搜索查询中。如何将短语建议应用于多搜索查询?理想情况下,它将应用于正在搜索的所有字段。

我的用例是这样的:用户执行 MultiSearch 查询。他们没有找到他们想要的东西。在这一点上,我想提出一个不同的查询,这可能是他们正在寻找的。这类似于 Google 的“您的意思是……”建议。