怎样得到字符串中相同字符串的数量?请高手指教

wuming19821016 2007-06-13 03:55:42
例:
AnsiString aa;
aa = "asdfsdCMGkljoilkj kjllCMGsjdflkjsdCMGsdfsdf";
怎样得到字符串"CMG"的数量?

字符串"CMG"的位置不确定,字符串aa的内容不确定

高手指教呀!
...全文
162 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyingpig4945 2007-06-13
  • 打赏
  • 举报
回复
路过,同楼上丁哥,标准库的count算法。
count(beg, end, val)
其中beg为指向aa首的迭代器(可近似作“指针”理解),end为指向aa末位下一位的迭代器(类似于字符数组最后一位的'\0'符),val为要查找的内容,返回值为个数。
jacknes009 2007-06-13
  • 打赏
  • 举报
回复
AnsiString aa;
aa = "asdfsdCMGkljoilkj kjllCMGsjdflkjsdCMGsdfsdf";
string bb = aa.c_str();
int num = count(aa.begin(),aa.end(),"CMG");
num就是结果

包含头文件就可以了
#include <iostream.h>
#include <string.h>
#include <algorithm>
Jim@luckeeinc.com 2007-06-13
  • 打赏
  • 举报
回复
int i = 0;
String tmp = aa.Trim();
while(tmp.Pos("CMG") > 0)
{
i++;
tmp.delete(tmp.Pos("CMG"),3);
}
zhgwbzhd 2007-06-13
  • 打赏
  • 举报
回复
不是有获得子串的第一位置吗?获得了再在剩下的子串中查找,
用循环或者递归都可以。
不过好像没有直接那样的函数。

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧