计算字符串中字符串出现的次数

新手上路,请多包涵

计算字符串中出现的所有子字符串的最佳方法是什么?

示例:计算 FooFooBarFooBarFoo 的出现次数

原文由 MBZ 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 729
1 个回答
#include<iostream>
#include<string>
using namespace std;
int main()
{
    string s1,s2;
    int i=0;
    cout<<"enter the string"<<endl;
    getline(cin,s1);
    cout<<"enter the substring"<<endl;
    cin>>s2;
    int count=0;
    string::iterator it=s1.begin();
    while(it!=s1.end())
    {
        if(*it==s2[0])
        {
            int x =s1.find(s2);
            string subs=s1.substr(x,s2.size());
            if(s2==subs)
                count++;
        }
        ++it;

    }
    cout<<count<<endl;
    return 0;
}

原文由 deep 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题