21xrx.com
2025-04-28 09:36:56 Monday
文章检索 我的文章 写文章
C++字符串去掉双引号的方法
2023-07-05 12:14:20 深夜i     96     0
C++ 字符串 去掉 双引号 方法

C++中字符串的表示方式是使用双引号将字符串包裹起来。但是在某些情况下我们需要将字符串中的双引号去掉,例如在进行字符串比较时,双引号会影响字符串的相等判断。那么在C++中如何快速地去掉字符串中的双引号呢?

方法一:使用std::string的erase()和find()方法

思路:利用find()方法找到双引号的位置并使用erase()方法删除双引号。

示例代码:

#include <iostream>
#include <string>
using namespace std;
string removeQuotes(string str) {
  int pos = str.find('"');
  while (pos != -1) {
    str.erase(pos, 1); // 删除双引号
    pos = str.find('"', pos);
  }
  return str;
}
int main() {
  string str = "\"Hello World!\"";
  str = removeQuotes(str);
  cout << str << endl; // 输出:Hello World!
  return 0;
}

方法二:使用std::string的replace()方法

思路:使用replace()方法将双引号替换成空字符串。

示例代码:

#include <iostream>
#include <string>
using namespace std;
string removeQuotes(string str) {
  str.replace(str.find('"'), 1, ""); // 将双引号替换成空字符串
  return str;
}
int main() {
  string str = "\"Hello World!\"";
  str = removeQuotes(str);
  cout << str << endl; // 输出:Hello World!
  return 0;
}

以上两种方法都可以有效地去掉字符串中的双引号,具体使用哪种方法可以根据需求和具体情况选择。

  
  

评论区

请求出错了