当前位置: 首页 > 知识库问答 >
问题:

在字符串中查找子字符串的最快方法C++[duplicate]

乐正嘉瑞
2023-03-14

我需要在一个字符串中找到许多子字符串。我下载了一个网页并把它放入一个字符串中。然后我要看看页面是否包含一些字符串(子字符串)。

现在我在boost库中使用正则表达式,因为我使用它来使用正则表达式模式([0-9]等)。

问题是:如果我只需要在一个字符串中找到一个子字符串,哪种方法是最快的?

共有1个答案

谢叶五
2023-03-14

有子串搜索的算法。在这里可以找到与示例代码的比较:http://old.blog.phusion.nl/2010/12/06/Efficient-substring-searching/

博耶-摩尔-霍斯波尔赢得基准。https://en.wikipedia.org/wiki/boyer-moore-horspool_algorithm

 类似资料:
  • 问题内容: 我有2列的大型表格:Id和Title。ID为bigint,我可以自由选择“标题”列的类型:varchar,char,text等。列标题包含随机文本字符串,例如“ abcdefg”,“ q”,“ allyourbasebelongtous”,最多255个字符。 我的任务是通过给定的子字符串获取字符串。子字符串也具有随机长度,可以是字符串的开头,中间或结尾。最明显的执行方式: 我不在乎IN

  • 问题内容: 我在尝试搜索字符串中的子字符串时遇到问题。该子字符串可能在字符串中也可能不在字符串中。 我知道是否可以完成的两种方法是: 正则表达式 但是,还有其他“优化”方式吗?你会怎么做? Ruby可以提供更好的答案吗?由于我们使用jRuby,因此答案可以是Ruby或Java。 问题答案: 在Ruby中,使用方法: 返回。

  • 我如何在O(N**2)个时间内完成它?

  • 本文向大家介绍Java的字符串中对子字符串的查找方法总结,包括了Java的字符串中对子字符串的查找方法总结的使用技巧和注意事项,需要的朋友参考一下 Java中字符串中子串的查找共有四种方法,如下: 1、int indexOf(String str) :返回第一次出现的指定子字符串在此字符串中的索引。 2、int indexOf(String str, int startIndex):从指定的索引处

  • 问题是,我试图这么做,但我检查字符串长度的方法不起作用;我能做些什么来修复它?

  • 问题内容: 我正在处理JavaScript的性能问题。所以我只想问:检查一个字符串是否包含另一个子字符串的最快方法是什么(我只需要布尔值)?您能否提出您的想法和示例代码片段? 问题答案: 您有两个可能性: 正则表达式: // or /word/.test(str) : 更新: 不能肯定地说哪种方法更快。浏览器之间的差异是巨大的。虽然在Chrome 10中似乎更快,但在Safari 5 中显然比任何