c++ string常用用法

substr函数

string a = "01234567";
//从下标2开始,长度为4,s不变
string b = a.substr(2,4);

//从下标2开始到结束 
string c = a.substr(2);

insert函数

string a = "01234567";
//s会改变 
a.insert(2,"000");

erase函数

string a = "01234567";
//s会改变 
 a.erase(2,3);

find和rfind函数

string a = "01234567";
//不存在则返回-1 
int k = a.find("45");
//从a的下标5开始 
k = a.find("45",5);
//找最后一个出现的,返回的位置仍然是从前往后数 
k = a.rfind("45");

replace函数

string a = "01234567";
//从2开始4个长度换成"gg" 
a.replace(2,4,"gg");

char[]转string

char a[]="123,456,789,0";
string b;
b=a;
cout<<b;

string 转char*

string a="123,456,789,0";
char* b;
b=(char*)a.data();
cout<<b;

去掉前后空格函数的trim

string trim(string s){
	s.erase(0,s.find_first_not_of(" "));
	s.erase(s.find_last_not_of(" ")+1);
	return s;
}

split函数(需要转化成char*)

vector<char*> split(char* s,char* c){
	vector<char*> v;
	char *p = strtok(s,c);
	while(p != NULL){
		v.push_back(p);
		p=strtok(NULL,c);
	}
	return v;
}

猜你喜欢

转载自blog.csdn.net/weixin_37609825/article/details/80278892