学堂 学堂 学堂公众号手机端

C++中没有内置的stringsplit函数,但可以自定义实现一个split函数来分割字符串。以下是一个简单的示例代码

lewis 1年前 (2024-04-09) 阅读数 9 #技术

C++中没有内置的stringsplit函数,但可以自定义实现一个split函数来分割字符串。以下是一个简单的示例代码:

#include<iostream> #include<string> #include<vector> #include<sstream> std::vector<std::string>split(conststd::string&str,chardelimiter){ std::vector<std::string>tokens; std::stringstreamss(str); std::stringtoken; while(std::getline(ss,token,delimiter)){ tokens.push_back(token); } returntokens; } intmain(){ std::stringstr="Hello,World,How,Are,You"; std::vector<std::string>tokens=split(str,','); for(conststd::string&token:tokens){ std::cout<<token<<std::endl; } return0; }

在上述示例代码中,split函数接受一个字符串和一个分隔符作为参数,将字符串按照分隔符进行分割,并返回一个存储分割结果的字符串向量。

首先,使用std::stringstream将输入字符串str转换为流对象ss。然后,使用std::getline函数从ss中逐行读取token,将其加入到tokens向量中。


最后,在main函数中,将字符串"Hello,World,How,Are,You"传递给split函数,分隔符为’,'。然后,使用循环遍历tokens向量中的分割结果,并打印每个分割结果。

运行上述代码的输出结果将是:

Hello World How Are You
版权声明

本文仅代表作者观点,不代表博信信息网立场。

热门