1.当字符串中只有一对双引号,取引号里面的内容
//跳过第一个引号以前的字符,读下面字符,直到下一个引号前为止
int main()
{
string source = "how are you = \"nihao\"";
int pos_1 = source.find("\"");
int pos_2 = source.find_last_of("\"");
string dest = "";
dest = source.substr(pos_1 + 1 ,pos_2 - pos_1 - 1);
//substr(t1,t2) //含义:从t1位置读取t2长度的字符串
cout<<"dest = " <<dest<<endl;
}
2.string替换所有指定字符串(C++)
参考:[1]
string& replace_all_distinct(string& str,const string& old_value,const string& new_value)
{
for(string::size_type pos(0); pos!=string::npos; pos+=new_value.length()) {
if( (pos=str.find(old_value,pos))!=string::npos )
str.replace(pos,old_value.length(),new_value);
else break;
}
return str;
}
int main()
{
cout << replace_all_distinct(string("12212"),"12","21") << endl;
}
3.数据类型转换
3.1 string转int
std::string str;
int i = std::stoi(str);
3.2 int转string
int i;
string str=to_string(i);
3.3 string转const char
const char a=string1.c_str();
4.创建文件夹
参考:[1]
#include <iostream>
using namespace std;
int main()
{
string folderPath = "E:\\database\\testFolder";
string command;
command = "mkdir -p " + folderPath;
system(command.c_str());
return 0;
}