21xrx.com
2024-11-22 07:22:21 Friday
登录
文章检索 我的文章 写文章
C++实现查找母串中子串出现的次数
2023-07-03 21:43:40 深夜i     --     --
C++ 查找 母串 子串 出现次数

在字符串处理过程中,常常需要查找一个字符串中所包含的子串出现的次数。C++提供了很多字符串处理的函数和类,为我们方便处理字符串提供了很多帮助。下面介绍一种用C++实现查找母串中子串出现的次数的方法。

思路:

在查找子串出现的次数时,可以使用STL库中的string类和其相关的函数来实现。方法如下:

1.定义一个整数变量num用于记录子串出现的次数,初始化为0。

2.使用string类的find函数,查找字符串中是否包含子串,若找到,则num自增1,继续查找直至找不到为止。

3.输出num的值。

代码实现:


#include <iostream>

#include <string>

using namespace std;

int main() {

  string str, sub;

  int num = 0;

  

  getline(cin, str); // 读入母串

  getline(cin, sub); // 读入子串

  

  size_t pos = str.find(sub); // 查找子串

  while (pos != string::npos) { //找到子串

    num++; // 子串出现次数加1

    pos = str.find(sub, pos + 1); // 继续查找下一个子串

  }

  

  cout << "子串 \"" << sub << "\" 出现的次数为:" << num << endl;

  return 0;

}

以上代码中,getline函数用于从标准输入读入字符串,find函数用于查找字符串中是否包含子串。在每次查找到子串时,num自增1,循环结束后输出num即可。

总结:

通过使用STL库中的string类和相关函数,可以方便地实现查找母串中子串出现的次数的功能。以上代码中展示了一个简单的实现方法,实际上在实际应用中,还需要考虑多种情况的处理,如字符串长度的判断、结果输出格式的优化等。对于字符串处理,我们可以通过学习和实践不断提高自己的熟练度和技能。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复