21xrx.com
2024-12-22 22:47:24 Sunday
登录
文章检索 我的文章 写文章
「C++」如何删除字符串中的指定字符串
2023-07-01 19:53:27 深夜i     --     --
C++ 删除 字符串 指定字符串

C++是一种流行的编程语言,它可以用来处理字符串。有时候,我们需要删除字符串中的指定字符串。本文将介绍如何在C++中删除字符串中的指定字符串。

方法一:使用erase()函数

C++中的string类有一个erase()函数,它可以用来删除字符串中的指定部分。下面是一个示例代码:


#include <iostream>

#include <string>

using namespace std;

int main() {

  string str = "Hello, World!";

  string delStr = "World";

  size_t pos = str.find(delStr); // 查找要删除的字符串位置

  if (pos != string::npos) { // 如果找到了,则删除

    str.erase(pos, delStr.length());

  }

  cout << str << endl;

  return 0;

}

在上面的代码中,我们首先定义了一个字符串变量str,并初始化为"Hello, World!"。然后我们定义了另一个字符串变量delStr,它是我们想要删除的字符串。接着,我们使用了find()函数来查找要删除的字符串在str中的位置。如果找到了,我们就使用erase()函数来删除该字符串。

注意:在这个示例代码中,我们使用了size_t类型来保存查找到的字符串位置。这是因为在string类中,查找到的字符串位置是一个无符号整数。因此,我们应该使用无符号整数类型来保存它。

方法二:使用replace()函数

C++中的string类还有一个replace()函数,它也可以用来删除字符串中的指定部分。下面是一个示例代码:


#include <iostream>

#include <string>

using namespace std;

int main() {

  string str = "Hello, World!";

  string delStr = "World";

  size_t pos = str.find(delStr); // 查找要删除的字符串位置

  if (pos != string::npos) { // 如果找到了,就替换为空字符串

    str.replace(pos, delStr.length(), "");

  }

  cout << str << endl;

  return 0;

}

在这个示例代码中,我们首先定义了一个字符串变量str,并初始化为"Hello, World!"。然后我们定义了另一个字符串变量delStr,它是我们想要删除的字符串。接着,我们使用了find()函数来查找要删除的字符串在str中的位置。如果找到了,我们就使用replace()函数来将该字符串替换为空字符串。

总结

本文介绍了两种在C++中删除字符串中的指定字符串的方法。第一种方法是使用erase()函数,它可以通过位置和长度来删除指定的字符串。第二种方法是使用replace()函数,它可以将指定的字符串替换为空字符串。根据实际情况,我们可以选择适合自己的方法来处理字符串。

  
  

评论区

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