C++ c++;字符串拆分的实现
可能的重复项:C++ c++;字符串拆分的实现,c++,C++,可能的重复项: 我想解析一行文本,它由几个用空格分隔的单词组成。 所以我需要知道用某个分隔符分割字符串的C++方法。示例行如下所示: aa bb cc dd 这意味着在配置文件的每一行中使用一个或多个空白作为分隔符。你们谁能提供一些工作代码来解决我的问题? 提前感谢。字符串tmp; string tmp; vector<string> out; istringstream is("aa bb cc dd"); while(is >> tm
我想解析一行文本,它由几个用空格分隔的单词组成。 所以我需要知道用某个分隔符分割字符串的C++方法。示例行如下所示:
aa bb cc dd
这意味着在配置文件的每一行中使用一个或多个空白作为分隔符。你们谁能提供一些工作代码来解决我的问题?
提前感谢。字符串tmp;
string tmp;
vector<string> out;
istringstream is("aa bb cc dd");
while(is >> tmp)
out.push_back(tmp);
矢量输出;
istringstream是(“aa bb cc dd”);
while(is>>tmp)
向外推,向后推(tmp);
请尝试使用此代码。矢量输出应该包含标记化字符串您可以使用strtok函数分割字符串
int i=0;
int j=0;
char text[] ="aa bb cc dd";
char *splittedtext[100]; // have 100 element
splittedtext[0] = strtok(text," ");
while(splittedtext[i] != '\0'){
++i;
splittedtext[i] = strtok(NULL," ");
}
for(j=0;splittedtext[j]!='\0';++j)
printf("%s",splittedtext[j]);
@希恩德尔:为什么要用正则表达式呢?这是一个经典的家庭作业问题。DIY。你可以,但请不要。问题是关于C++,而不是C++。