C++如何实现字符串分割_C++ stringstream流处理分割字符串

admin 百科 15
stringstream可高效分割字符串,示例用>>提取空白分隔内容,或getline配合自定义分隔符如逗号,支持过滤空项,适用于解析CSV等场景,需注意clear重置状态。

C++如何实现字符串分割_C++ stringstream流处理分割字符串-第1张图片-佛山资讯网

在C++中,使用stringstream是一种常见且高效的方式处理字符串分割。它能自动按空白字符(空格、换行、制表符)拆分字符串,并支持逐个提取子串。这种方法不需要引入额外库,代码简洁易懂。

stringstream的基本用法

stringstream是C++标准库中的一个类,定义在头文件中,可以将字符串当作输入流来处理,类似于从cin读取数据。

通过操作符,可以从stringstream中依次提取以空白符分隔的内容。

示例代码:

立即学习“C++免费学习笔记(深入)”;

#include <iostream>
#include <string>
#include <sstream>
#include <vector>

int main() {
    std::string str = "apple banana cherry";
    std::stringstream ss(str);
    std::string word;
    std::vector<std::string> result;

    while (ss >> word) {
        result.push_back(word);
    }

    for (const auto& w : result) {
        std::cout << w << std::endl;
    }

    return 0;
}

登录后复制

输出结果为每行一个单词:

apple
banana
cherry

指定自定义分隔符进行分割

默认情况下,stringstream以空白字符作为分隔符。如果需要使用其他分隔符(如逗号、分号等),可以通过getline()函数配合指定的分隔符实现。

例如,分割以逗号分隔的字符串:

标签: word app csv ai c++ ios apple stream 标准库

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~