以字符串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;
}
相关推荐
li星野12 小时前
滑动窗口五题通关:从最小覆盖子串到水果成篮(Python + C++)
c++·python·学习
Xpower 1712 小时前
OpenClaw近一月版本更替讲解
人工智能·学习·算法
Ulyanov12 小时前
《从质点到位姿:基于Python与PyVista的导弹制导控制全栈仿真》: 刚体觉醒——6-DOF刚体动力学、四元数与全姿态解算
开发语言·人工智能·python·算法·系统仿真·雷达电子对抗仿真
nexustech12 小时前
JavaScript日期处理工具date-fns,累计36.5k Star
开发语言·javascript·其他·ecmascript
Sylvia33.12 小时前
足球数据API接入实战:从认证到实时比分推送的完整指南
java·开发语言·前端·c++·python
Chloeis Syntax12 小时前
JavaEE初阶学习日记(1)---线程和进程
java·开发语言·学习·线程·javaee
Dillon Dong12 小时前
机侧同步定子电压环的PI整定:从“对齐三个量“到“闭环四步法“
算法·变流器·风电控制·dfig
Languorous.12 小时前
C++数据结构进阶|图(Graph)详解:从存储到面试高频算法实战
算法
时空自由民.12 小时前
C/C++ volatile关键字原理及应用介绍
java·c语言·c++
凯瑟琳.奥古斯特12 小时前
SpringBoot快速入门指南
java·开发语言·spring boot·后端·spring