以字符串mark作为分隔符,对字符串s进行分割

cpp 复制代码
int main()
{
	string s = "How are you?";
	string mark = " ";
	string tmp;
	int cur = 0, first = 0;
	//找到第一个标记
	while ((cur = s.find_first_of(mark, cur)) != string::npos)
	{
		//获取第一个标记前的子串
		tmp = s.substr(first, cur - first);
		cout << tmp << " ";
		//下一段有效字符
		first = ++cur;
	}
	//最后一段有效字符
	if (first != s.size())
	{
		tmp = s.substr(first, cur - first);
		cout << tmp << " ";
	}
	cout << endl;
	return 0;
}
相关推荐
载数而行5201 天前
QT的五类布局
c++·qt·学习
Cg136269159741 天前
JS-对象-Dom案例
开发语言·前端·javascript
故事和你911 天前
sdut-程序设计基础Ⅰ-实验五一维数组(8-13)
开发语言·数据结构·c++·算法·蓝桥杯·图论·类和对象
载数而行5201 天前
QT的QString类
c++·qt·学习
像污秽一样1 天前
算法与设计与分析-习题4.2
算法·排序算法·深度优先·dfs·bfs
Jin、yz1 天前
JAVA 八股
java·开发语言
我是唐青枫1 天前
C#.NET Span 深入解析:零拷贝内存切片与高性能实战
开发语言·c#·.net
lxh01131 天前
数据流的中位数
开发语言·前端·javascript
Storynone1 天前
【Day20】LeetCode:39. 组合总和,40. 组合总和II,131. 分割回文串
python·算法·leetcode
bu_shuo1 天前
Visual C++2010学习版(全国计算机等级二级考试版)安装记录
c++·cpp·visual c++·计算机二级