在编程过程中会经常遇到字符串的处理,其中字符串的拆分最为常见。下面总结出常见的std::string处理方式。
例如 待处理字符串为 std::string to_deal_str = “Test_Deal_String”; 如果我们想用过‘_’来进行分割。
这里会用到std::string成员函数有rfind(),substr()。
void DealStrSegmentation(std::string sToDealStr)
{
size_t index_ = sToDealStr .rfind('_', sToDealStr.length());
if (index_ != string::npos)
{
sToDealStr .substr(index_ + 1, sToDealStr .length() - index_);
sToDealStr.erase(index_, std::string::npos);
cout<<sToDealStr<<endl;
}
else
{
return;
}
if (!sToDealStr.empty())
{
DealStrSegmentation(sToDealStr);
}
}
因为这里是从右侧查找索引的所以拆分的结果为: Test_Deal , Test。