以字符串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;
}
相关推荐
草莓熊Lotso40 分钟前
【Linux系统加餐】从原理到封装:基于建造者模式实现System V信号量工业级C++封装
android·linux·运维·服务器·网络·c++·建造者模式
爱睡懒觉的焦糖玛奇朵7 小时前
【从视频到数据集:焦糖玛奇朵的魔法工具使用说明】
人工智能·python·深度学习·学习·算法·yolo·音视频
Runawayliquor7 小时前
opbase:CANN 所有算子的公共地基
大数据·数据库·人工智能·算法
徐安安ye7 小时前
FlashAttention 为什么对序列长度这么“敏感”?
人工智能·算法
潜创微科技7 小时前
IT6520:USB‑C 转 MIPI 芯片方案 4K@120Hz 高清显示
c语言·开发语言
言之。8 小时前
【Python】免费的中文 AI 配音方案
开发语言·人工智能·python
kyle~8 小时前
机器视觉---熔池相机(穿透强光的视觉感知)
c++·数码相机·计算机视觉·机器人·焊接机器人
宏笋8 小时前
C++ Coroutines(协程) 详解
c++
天天进步20158 小时前
Python全栈项目:从零手操一个高性能 API 网关
开发语言·python
Java面试题总结8 小时前
java高频面试题(2026最新)
java·开发语言·jvm·数据库·spring·缓存