加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 查找给定字符串中所有子字符串的出现次数

发布时间:2020-12-16 10:34:22 所属栏目:百科 来源:网络整理
导读:我使用一个简单的字符串函数strstr来查找文本中第一次出现刺痛.我使用以下代码来计算文本中唯一单词的数量. for(int i=0;i24;i++) { if(strstr(text,ops[i])) { op++; } } 但我想找到程序中所有子字符串的出现.我可以在JAVA中轻松完成.但我被要求在C中这样做
我使用一个简单的字符串函数strstr来查找文本中第一次出现刺痛.我使用以下代码来计算文本中唯一单词的数量.

for(int i=0;i<24;i++)
      {
              if(strstr(text,ops[i]))
              {                
                      op++;
              }

      }

但我想找到程序中所有子字符串的出现.我可以在JAVA中轻松完成.但我被要求在C中这样做.有帮助吗?

解决方法

strstr()用于C风格的字符串,如果你真的使用C,std :: string并且它的成员函数会更方便.

#include <string>
#include <iostream>

using namespace std;

int main()
{
    string s("hello hello");
    int count = 0;
    size_t nPos = s.find("hello",0); // first occurrence
    while(nPos != string::npos)
    {
        count++;
        nPos = s.find("hello",nPos + 1);
    }

    cout << count;
};

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读