📌  相关文章
📜  c++ 从字符串中删除 n 个字符 - C++ (1)

📅  最后修改于: 2023-12-03 15:29:52.335000             🧑  作者: Mango

在C++中删除字符串中的n个字符

在C++中,我们可以使用erase()函数来删除一个字符串中的字符。erase()函数有两种形式:

  1. 从指定的位置开始,删除给定数目的字符。
  2. 从指定的迭代器开始,删除指定数目的字符。
1. 从指定的位置开始,删除给定数目的字符

下面是从字符串的第二个位置开始,删除两个字符的代码:

#include <iostream>
#include <string>
using namespace std;

int main() {
    string str = "Hello, World!";
    str.erase(1, 2);
    cout << str << endl;
    return 0;
}

//输出结果为:Hlo, World!

erase()函数的第一个参数是要删除的第一个字符的位置,第二个参数是要删除的字符的数量。

2. 从指定的迭代器开始,删除指定数目的字符

下面是从字符串的第二个字符开始,删除两个字符的代码:

#include <iostream>
#include <string>
using namespace std;

int main() {
    string str = "Hello, World!";
    str.erase(str.begin()+1, str.begin()+3);
    cout << str << endl;
    return 0;
}

//输出结果为:Hlo, World!

erase()函数的第一个参数是要删除的第一个字符的迭代器,第二个参数是要删除的字符的迭代器的下一个位置。

完整代码
#include <iostream>
#include <string>
using namespace std;

int main() {
    string str = "Hello, World!";
    str.erase(1, 2);
    cout << str << endl;

    string str2 = "Hello, World!";
    str2.erase(str2.begin()+1, str2.begin()+3);
    cout << str2 << endl;

    return 0;
}

以上就是在C++中删除字符串中n个字符的方法。