legongju.com
我们一直在努力
2025-01-11 01:59 | 星期六

c++如何切分字符串

在C++中,可以使用std::string类的成员函数substrfind来切分字符串。下面是一个简单的示例,展示了如何根据指定的分隔符来切分字符串:

#include
#include
#include

std::vector split(const std::string& input, char delimiter) {
    std::vector result;
    std::size_t startPos = 0;
    std::size_t endPos = input.find(delimiter);

    while (endPos != std::string::npos) {
        result.push_back(input.substr(startPos, endPos - startPos));
        startPos = endPos + 1;
        endPos = input.find(delimiter, startPos);
    }

    result.push_back(input.substr(startPos));
    return result;
}

int main() {
    std::string input = "Hello,World,This,Is,A,Test";
    char delimiter = ',';

    std::vector tokens = split(input, delimiter);

    for (const auto& token : tokens) {
        std::cout<< token<< std::endl;
    }

    return 0;
}

在这个示例中,我们定义了一个名为split的函数,它接受一个输入字符串和一个分隔符作为参数。函数首先创建一个空的std::vector对象来存储切分后的子字符串。然后,它使用find函数查找分隔符在输入字符串中的位置,并使用substr函数从输入字符串中提取子字符串。最后,将提取到的子字符串添加到结果向量中。当find函数返回std::string::npos时,表示已经找不到更多的分隔符,此时函数将剩余的子字符串添加到结果向量中并返回。

main函数中,我们调用split函数来切分一个包含逗号分隔的字符串,并将结果打印到控制台。

未经允许不得转载 » 本文链接:https://www.legongju.com/article/100542.html

相关推荐

  • c#如何获取当前程序的路径

    c#如何获取当前程序的路径

    在C#中,你可以使用System.IO.Path和System.Reflection命名空间来获取当前程序的路径。下面是一个示例代码:
    using System;
    using System.IO;
    us...

  • c#中如何调用python

    c#中如何调用python

    在C#中调用Python脚本,可以使用Pythonnet库(Python for .NET)或者IronPython库。这里我将分别介绍这两种方法。 使用Pythonnet库(Python for .NET): 首先,...

  • c#封装的步骤是什么

    c#封装的步骤是什么

    C# 封装主要包括以下几个步骤: 定义类(Class):创建一个新的类,用于存放需要封装的属性和方法。类是面向对象编程中的基本单位,它将数据(属性)和操作数据的...

  • c#字符串如何去重

    c#字符串如何去重

    在C#中,可以使用LINQ(Language Integrated Query)来实现字符串去重。下面是一个示例代码:
    using System;
    using System.Linq; class Program
    ...

  • c++ string如何删除指定字符

    c++ string如何删除指定字符

    在 C++ 中,您可以使用 erase 和 remove 函数来删除 std::string 中的指定字符
    #include
    #include
    #include int main() { std::string str = "He...

  • c++ string如何转int64

    c++ string如何转int64

    在 C++ 中,你可以使用 std::stoll(string to long long)函数将一个 std::string 转换为 int64_t
    #include
    #include
    #include int main() { st...

  • java类方法怎么定义

    java类方法怎么定义

    在Java中,方法是一段代码块,用于执行特定的任务。要定义一个Java类的方法,需要遵循以下语法:
    访问修饰符 返回类型 方法名(参数类型 参数名, ...) { // ...

  • java中private什么意思

    java中private什么意思

    在Java中,private是一个访问修饰符,用于限制类成员(如变量、方法和内部类)的访问权限。当一个类成员被声明为private时,它只能被其所在的类访问,而不能被其...