问题标签 [search]

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 投票
5 回答
23117 浏览

algorithm - 搜索排名/相关性算法

在知识库中开发文章数据库时(例如) - 对用户问题最相关的答案进行排序和显示的最佳方法是什么?

您会根据以前的用户是否找到帮助文章来使用关键字权重等附加数据,还是认为简单的关键字匹配算法就足够了?

0 投票
8 回答
366268 浏览

python - re.search 和 re.match 有什么区别?

Python模块search()中的和match()函数有什么区别?re

我已阅读文档当前文档),但我似乎从未记得它。我一直不得不查找并重新学习它。我希望有人会用例子清楚地回答它,以便(也许)它会留在我的脑海中。或者至少我会有一个更好的地方来回答我的问题,并且重新学习它需要更少的时间。

0 投票
6 回答
693 浏览

ruby-on-rails - 将完整的网络搜索添加到我的网站的最佳方式?

我需要将完整的网络搜索添加到我的网站。我需要谷歌自定义搜索之类的东西,但没有广告,而且它必须是免费的。任何可以索引我的网站并允许我搜索它的 Web 服务或开源项目的建议都会有所帮助。

如果有帮助,我的网站是用 ruby​​ on rails 制作的。

我会提出这个问题 community-wiki 这样你就可以编辑我糟糕的英语。我想很多人都可以从这个问题中受益。

0 投票
4 回答
1289 浏览

sql - 如何构建数据以实现可搜索性

我正在为音乐播放列表编写一个搜索应用程序。

流派和文件格式因播放列表而异,有时在播放列表中也存在差异。还有一个“同义词”标签的概念(例如,urban 将涵盖 hiphop 和 r&b,但反之则不然)。

以下是搜索词列表和我的预期结果。

福音:应该返回至少包含一首福音歌曲的所有播放列表。包含所有福音歌曲的播放列表将首先显示。urban:应该返回所有的 r&b 和 hiphop。再次将所有城市曲目的播放列表排在第一位。hiphop:应该返回所有 hiphop 但不返回 r&b。flac:应该返回所有包含 flac 文件的播放列表。从纯flac的开始。hiphop flac:应该首先返回 hiphop flac,然后是其他 hiphop 音频 hiphop AND flac:应该只返回 hiphop flac 嘻哈音频:应该返回 hiphop flac、hiphop mp3 等

当我刚刚开始这个项目时,我正在考虑索引所有这些的最佳方法。像 Lucene 这样的全文搜索在这里有用吗?注意我没有任何描述这些播放列表的文本,但我可以生成一些。

我正在考虑将所有这些术语组织为“标签”并将它们存储在多对多的数据库中。

表:播放列表(pk(id),desc)表:标签(pk(id),desc)表:playlist_has_tag(pk(link_id,tag_id))

解决都市==嘻哈|| rnb 的事情,我可能会添加一个 tag_synonyms 表:

表:tag_synonyms ( pk(tag_id, synonym_tag_id) )

然后我有两条记录表明urban包含hiphop和rnb:urban的tag id,hiphop的tag id urban的tag id,rnb的tag id

我觉得虽然使用这种方法查询可能会变得非常复杂。

CouchDB 可以在这里使用吗?我目前正在使用 PostgreSQL。是否有一些软件可以使这种事情变得容易?

我希望将来能够深入研究并支持复杂的搜索词,例如:

(嘻哈或房子)和文件类型:mp3 和艺术品:没有

并且还包含持续时间等内容。

0 投票
10 回答
1927 浏览

regex - 正则表达式搜索和替换程序

是否有一个简单轻量级的程序来搜索文本文件并用正则表达式替换字符串?

0 投票
5 回答
108 浏览

performance - 在 Web 2.0 站点中,新添加的标签需要多长时间(以秒为单位)才能显示并被索引以供搜索?

我正在构建一个具有标记功能的 web 2.0 站点,并希望从任何有经验的人那里了解系统可以花费多长时间(以秒为单位)a)在给定记录上显示新标签和 b)索引标签以供搜索. 例如,新添加的标签是否必须在 1 秒内可供搜索,但在 0.1 秒内显示在用户屏幕上?

0 投票
6 回答
10670 浏览

search - 在多个文件中替换 - Linux 的图形工具

它需要是图形的。没有 sed、awk、grep、perl 等等。我知道如何使用它们,我现在确实使用它们,但我需要在 300 多个文件中挑选每个替换。

我想要一个工具,我可以:

  • 输入搜索字符串
  • 键入替换字符串
  • 选择目录和文件扩展名

它将递归地进入该目录及其子目录中的每个文件,打开它并滚动到搜索字符串所在的位置并提供两个选项:

  • 替换(并找到下一个)
  • 找下一个

而已。正则表达式 支持是加分项,但不是必需的。

已解决:Regexxer 正是我所需要的。如果有人在 Slackware 上需要它,是您需要下载的内容以及如何编译它(选择每个依赖项的正确版本可以是 PITA)

0 投票
2 回答
2894 浏览

regex - 正则表达式查找包含序列但不包含不同序列的行

如何编写正则表达式来查找所有包含 665 且没有 .pdf 的行

我似乎无法在正则表达式中找到如何做。如果重要,这适用于 Notepad++ 语法。

谢谢

0 投票
3 回答
441 浏览

.net - 搜索字节[]

.NET 非常支持在字符串中搜索字符串,但是当您需要搜索的数据不是字符串时该怎么办?

我有通过 NetworkStream 以常规块形式到达的二进制数据。数据包是二进制的,但它们都以字节的签名序列开头。我将这些块累积到一个更大的缓冲区中并寻找数据包开始签名。

我真正要找的是方法的byte[]等价物String.IndexOf(ss)。我有一种讨厌的感觉,我将不得不自己用一个循环和一个状态机来实现它。

有什么建议么?交给你了!


正如建议的那样, Array.IndexOf(byte) 至少会为我节省一个显式循环。自发布以来,我想到找到第一个签名字节,然后提前探测最后一个签名字节应该在哪里的匹配,然后如果它们都匹配,则尝试对字符串的其余部分进行蛮力比较。这种方法的优点是可以廉价地拒绝错误匹配,并允许我在有部分签名等待另一个块时廉价地拒绝。

谷歌透露,上述绝妙方案是“KMP”或Knuth-Morris-Pratt算法的退化案例。从好的方面来说,如果 Knuth 把他的名字写在上面,那可能是闪电般的润滑,从不好的方面来说,为什么每当我有一个好主意时,Donald Knuth 会在 25 年前想到它?

由于我不能将积分奖励给 Donald Knuth,我猜他们会去 Nelson。

0 投票
4 回答
397 浏览

c++ - 如何在 fork 的帮助下并行搜索文件中的字符串?(GNU Linux/g++)

我有一个包含几行的文本文件,我正在这个文件中寻找一个字符串。我需要将以下命令行参数传递给程序:
- 文件路径
- 我要查找的字符串
- 允许程序“分叉”以完成此任务的最大进程数。

这样的程序应该如何构建?