21xrx.com
2024-11-22 02:54:54 Friday
登录
文章检索 我的文章 写文章
C++如何删除字符串中的特定字符
2023-07-13 16:40:59 深夜i     --     --
C++ 删除 字符串 特定字符

在C++中,我们可以使用字符串的erase函数来删除特定字符。erase函数接受两个参数,第一个参数表示需要删除的字符的位置,第二个参数表示需要删除的字符的数量。

例如,如果我们想删除字符串中所有的字符'x',我们可以遍历字符串中的每一个字符,找到需要删除的字符的位置,然后使用erase函数将该字符删除:


std::string str = "xxxyyyzzz";

int pos = str.find('x');

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

  str.erase(pos, 1);

  pos = str.find('x');

}

在上面的示例中,我们使用了字符串的find函数来查找字符'x'的位置,如果找到了该字符,则使用erase函数将其删除。我们还使用了while循环,以便删除所有的字符'x'。

如果我们想删除多个字符,可以使用一个类似的循环来遍历每一个需要删除的字符,例如:


std::string str = "xxxyyyzzz";

char charsToRemove[] = 'y';

for (char& c : charsToRemove) {

  int pos = str.find(c);

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

    str.erase(pos, 1);

    pos = str.find(c);

  }

}

在上面的示例中,我们使用了一个char类型数组来存储需要删除的字符,然后使用一个for循环来遍历每一个字符。在每一次循环中,我们都使用类似于前面示例的方式来删除字符串中的该字符。

  
  

评论区

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