21xrx.com
2024-09-20 05:51:49 Friday
登录
文章检索 我的文章 写文章
C++ 中使用 substr 函数实现字符串分隔符
2023-07-08 07:00:54 深夜i     --     --
C++ substr函数 字符串分隔符

在C++中,字符串分隔是一项常见的任务。当我们需要将一个大字符串分成多个小字符串时,我们需要使用一种称为“分隔符”的特殊字符。

使用C++中的substr函数可以很方便地实现字符串分隔任务。substr函数是C++中的一个方法,它可以从字符串中提取子串。它需要两个参数:一个是起始位置,另一个是要提取的子串长度。下面是一个示例,说明如何使用substr函数实现字符串分隔符。

假设我们有一个字符串,包含许多单词,并且句子中每个单词之间都用空格分隔。我们可以使用substr函数和空格字符作为分隔符,将原字符串划分为许多子字符串。

在下面的代码中,我们使用std :: vector存储所得到的多个子字符串。substr函数的第一个参数是起始位置,也可以用std :: string :: find函数找到空格字符的位置,然后使用substr函数从头到空格位置提取子串。而如果我们的字符串中还包括其他分隔符,只需要更改delim的值,就可以快速实现字符串的分隔。

#include

#include

#include

int main() {

  std::string str = "This is a sample sentence.";

  std::vector words;

  std::string delim = " ";

  size_t start = 0;

  size_t end = str.find(delim);

  while (end != std::string::npos) {

    std::string word = str.substr(start, end - start);

    words.push_back(word);

    start = end + delim.length();

    end = str.find(delim, start);

  }

  words.push_back(str.substr(start, end));

  for (auto& word : words) {

    std::cout << word << "\n";

  }

  return 0;

}

在上述代码中,我们使用while循环遍历整个字符串,每次提取一个子字符串,并将其添加到vector中。最后,我们使用for循环打印vector中的所有子字符串。

总的来说,C++中的substr函数是一个非常有用的工具,可以轻松实现字符串分隔符。通过结合其他C++系统库,如vector,我们甚至可以更加简便地处理一系列字符串操作。无论是简单任务还是复杂任务,C++都提供了许多功能强大的工具,可以帮助我们处理字符串。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复