stringtokenizer.cpp
来自「一个的文本分割程序」· C++ 代码 · 共 76 行
CPP
76 行
#pragma warning(disable:4786)
#include <string>
#include <vector>
#include "StringTokenizer.h"
using namespace std;
StringTokenizer::StringTokenizer(string str,string seperators)
{
parse(str,seperators);
}
void StringTokenizer::parse(string str,string seperators)
{
int len=str.length();
int start,stop;
start=str.find_first_not_of(seperators);
while(start>=0&&start<len)
{
stop=str.find_first_of(seperators,start);
if(stop<0||stop>len)
{
stop=len;
}
tokens.push_back(str.substr(start,stop-start));
start=str.find_first_not_of(seperators,stop+1);
}
backToStart();
}
void StringTokenizer::backToStart()
{
index=0;
}
string StringTokenizer::getNext()
{
if(index>=0&&index<tokens.size())
{
return tokens[index++];
}
else
{
return "";
}
}
string StringTokenizer::getToken(int i)
{
if(i>=0&&i<tokens.size())
{
return tokens[i];
}
else
{
return "";
}
}
int StringTokenizer::getTokenLength(int i)
{
if(i>=0&&i<tokens.size())
{
return tokens[i].length();
}
else
return 0;
}
int StringTokenizer::getSize()
{
return tokens.size();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?