C++字符串切片

类似python的函数:

a = "123=456=789"
print(a.split("="))
>> ["123", "456", "789"]

C++中string类型没有类似函数,但是可以使用string类的find和substr方法实现该功能,代码如下:

// str:切片字符串   patten:分割部位的字符串
vector<string> stringSplit(string str, string patten) {
    vector<string> retString;
    while(true) {
        if(str.find(patten) == string::npos) break;
        int pos = str.find(patten);
        retString.push_back(str.substr(0, pos));
        str = str.substr(pos+patten.size(), str.size()-pos);
    }
    retString.push_back(str);
    return retString;
}
posted @ 2022-08-30 09:48  骇人的籽  阅读(1072)  评论(0编辑  收藏  举报