温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C++字符串分割

发布时间:2020-08-07 20:59:26 来源:网络 阅读:397 作者:313119992 栏目:编程语言

字符串分割经常用到,这里做一个记录。方便查阅。


1.使用strtok();其中

采用strtok(),分隔符可以是多种,如 * ,#中的一种或几种的组合

vector<string> stringSplit(string s, const char * split)
{
	vector<string> result;
	const int sLen = s.length();
	char *cs = new char[sLen + 1];
	strcpy(cs, s.data());
	char *p;

	p = strtok(cs, split);
	while (p)
	{
		printf("%s\n", p);
		string tmp(p);
		result.push_back(tmp);
		p = strtok(NULL, split);
	}
	return result;
}


2.使用string.substr();其中

采用string.substr(),分隔符只能是一种,如 * ,#中的一种

vector<string> vec;
int j = 0;
for (int i = 0; i<str.size(); i++){

	if (str[i] == ' '){
		string tmp = str.substr(j, i - j);
		vec.push_back(tmp);
		j = i + 1;
	}
	if (i == str.size() - 1){
		string tmp = str.substr(j, i - j + 1);
		vec.push_back(tmp);
	}

}


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI