利用STL标准库实现字符串分割

在我们的实际应用当中,字符串分割是很重要的一个功能,但是C++的string并没有为我们提供这个功能,所以说我们只有自己动手实现.实现代码如下:

#include <string>
#include <vector>

using namespace std;

vector<string> splitString(string str,string pattern)
{
    string::size_type pos; // 查找到的位置
    vector<string> result; // 返回的字符串
    str+=pattern;
    int size=str.size();

    for(int i=0;i<size;i++)
    {
        pos = str.find(pattern,i);
        if(pos<size)
        {
            string s = str.substr(i,pos-i);
            result.push_back(s);
            i = pos+pattern.size()-1;
        }
    }

    return result;
}