问题标签 [string-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 投票
2 回答
377 浏览

c - 在另一个字符串中搜索最右边的字符串 - 在 c 中

可能重复:
strstr 是否有反向 fn()

我编写了这个 main 和函数,它获取两个字符串并检查第二个字符串是否存在于第一个字符串中,然后返回最右边的索引出现位置。如果没有找到返回-1

这是我写的代码:

我认为我在这一行有问题:

因为我尝试将第二个字符串包含在第一个字符串中,但是虽然t[j]等于 null 它不执行内部 if 语句。

  • 我知道还有很多其他方法可以编写这个程序。但我知道这个也应该工作,我正在努力让它工作。
0 投票
8 回答
3097 浏览

c++ - 使用 C 在文本中搜索单词,并显示该单词之后的信息

假设我有一个这样的文本文件:

用户:约翰

设备:12345

日期:12/12/12

编辑:

我有我的代码可以成功搜索一个单词,并在该单词之后显示信息。但是,当我尝试编辑代码以搜索 2 个或 3 个单词并在它们之后显示信息而不是仅 1 个单词时,我无法让它工作。我尝试将代码添加到同一个 while 循环中,并为另一个词创建一个新的 while 循环,但两者都不起作用。一定有什么我做错/没有做的事情。

请指教,谢谢!

这是我的代码:

0 投票
2 回答
309 浏览

c - 在C中搜索多个单词,并在它们之后显示以逗号分隔的信息

假设我有一个 txt 文件:

日期:11/11/11

设备:Boxster

状态:好

我正在尝试让我的代码搜索一个单词(Say Device:),并在该单词之后显示信息(Boxster)。到目前为止,我的代码只能搜索一个单词。如何修复代码以便它可以搜索 2 或 3 个单词,并在它们之后显示信息?

如果我可以按以下格式显示信息会更有帮助:

Boxster,2011 年 11 月 11 日,很好。

这是我的代码,提前谢谢!

0 投票
1 回答
704 浏览

c++ - 加快 Boyer-Moore-Horspool 字符串搜索的实现

我在 C++ 中实现 BMH 算法时遇到了一些麻烦。

这是代码:

它适用于大多数示例,但有一些示例不起作用(到目前为止,我发现只有从不同来源下载的大量测试)。

我想知道我在哪里/做错了什么(我真的不想要代码)。

编辑:由于评论

您知道如何在不实现完整的 Boyer-Moore 版本的情况下使该算法运行得更快吗?

0 投票
2 回答
138 浏览

php - 如何使用 PHP 在 multilpe 字符串中搜索 HTML 标签?

您可以使用strpos()搜索 HTML 标记吗?似乎产生无效的结果。还尝试转换为htmlentities()- 仍然没有运气。如何正确搜索文本装饰,例如:粗体、斜体和下划线?

示例:(演示

0 投票
1 回答
1878 浏览

json - 如何从linkedin jsapi获取公司ID

我试图使用 jsapi 从linkedin 获取公司 ID,iam 使用下面的 url

"/company-search:(公司:(id,name))?keywords=ibm%20oracle%20infosys"

我有一些其他公司的身份证

如何一次获取多个公司的公司 ID

0 投票
2 回答
2889 浏览

python - Python 在文件中搜索一百万个字符串并计算每个字符串的出现次数

这更多的是要找到最快的方法来做到这一点。我有一个 file1,它在单独的行中包含大约一百万个字符串(长度 6-40)。我想在另一个包含大约 80,000 个字符串的文件 2 中搜索它们中的每一个并计算出现次数(如果在一个字符串中多次找到小字符串,则该字符串的出现次数仍然为 1)。如果有人有兴趣比较性能,有下载 file1 和 file2 的链接。dropbox.com/sh/oj62918p83h8kus/sY2WejWmhu?m

我现在正在做的是为文件 2 构建一个字典,使用字符串 ID 作为键和字符串作为值。(因为 file2 中的字符串有重复值,只有字符串 ID 是唯一的)我的代码是

我的代码需要几个小时才能完成。任何人都可以建议一种更快的方法吗?file1 和 file2 都只有 50M 左右,我的电脑有 8G 内存,你可以使用尽可能多的内存来让它更快。任何可以在一小时内完成的方法都是可以接受的:)

在这里,在我尝试了下面这些评论的一些建议之后,请查看性能比较,首先是代码,然后是运行时。

Mark Amery 和其他人提出的一些改进

完成需要1m4s。与我的旧版本相比,提高了 20 多岁

#######熵建议的NEXT METHOD

这需要 1 分 10 秒,因为它避免搜索重复项,所以没有像预期的那样快,不明白为什么。

Mark Amery 建议的 Haystack 和 Needle 方法,结果是最快的,这种方法的问题是所有子串的计数结果都是 0,我还不明白。

这是我实现他的方法的代码。

只需0m11s即可完成,比其他方法快得多。但是,我不知道将所有计数结果都设为0是我的错误,还是Mark的方法存在缺陷。

0 投票
4 回答
78 浏览

javascript - JS - 遍历文本,在每个“。”之后进行数组条目

我是 JavaScript 新手。我有一个包含几个句子的文本,我希望每个句子都是名为句子和警报的数组中的一个条目(“创建了新条目”)。所以我必须循环遍历,只要有一个“。” 将开始一个新条目。但是我怎样才能通过一个文本直到它结束呢?

0 投票
2 回答
188 浏览

string - 支持追加、前置和搜索操作的字符串数据结构

我需要构建一个文本编辑器作为我的迷你项目,并且我需要设计一个支持以下操作的数据结构或算法:

  • Append:在字符串末尾追加一个字符。
  • Prepend:在字符串的开头添加一个字符。
  • Search:给定一个搜索字符串 s,找到该字符串的所有出现。

每个操作在 O(log n) 时间或更短的时间内完成。搜索和替换操作将是可观的,但不是必需的。字符串的最大长度是恒定的。任何想法如何实现这一目标?

谢谢!

0 投票
2 回答
999 浏览

string - 从字符串列表中进行模糊子字符串搜索

好的,我看过很多关于模糊字符串匹配、Levenstein 距离、最长公共子字符串等的帖子。它们似乎都不完全适合我想做的事情。我正在从各种 Web 服务中提取产品结果,并且我可以从这些服务中构建产品名称的大列表。这些名称可能包括一堆变量垃圾。以下是来自 SearchUPC 的一些示例:

等等我想做的是提取通用产品名称(在我的启发式人眼看来,这显然是Apple 60W MagSafe Power Adapter),但上述方法似乎都不太可能奏效。我的主要问题是我不知道要在字符串列表中搜索什么......起初,我想尝试最长的公共子字符串,但似乎这会失败,因为一堆字符串有一些东西订单,这可能会产生电源适配器的产品名称,这对用户来说并不是非常有用。

注意:从 SearchUPC API 返回的绝大多数Apply 60W MagSafe Power Adapter记录(这里大部分省略)确实包含文字字符串“ ”。

我在 Objective-C 中为 iOS 实现了这个,但我对算法的兴趣比实现更重要,所以任何语言都是可以接受的。