玉田网站设计公司石家庄seo推广公司
find函数可以在一个目标字符串中查找子字符串,返回值为子字符串在目标字符串中的起始位置
substr通过起始位置和长度可以截取一段字符串
将find和substr结合可以用于分割字符串
#include <iostream>
#include <string>
#include <tuple>using namespace std;tuple<string, string> splitKeyValue(const string& str, const string& splitStr)
{auto findSplitPos = str.find(splitStr);if(findSplitPos == string::npos){return make_tuple("", "");}string&& key = str.substr(0, findSplitPos);string&& value = str.substr(findSplitPos + splitStr.length(), str.length() - findSplitPos - splitStr.length());return make_tuple(key, value);
}int main()
{string s = "ABC.123.(DEFG)";string key, value;tie(key, value) = splitKeyValue(s, ".123.");cout<<key<<"="<<value<<endl;return 0;
}
运行程序输出:
ABC=(DEFG)