از متد ()erase استفاده کن .
این متد به شکل های مختلف تعریف شده .
string& erase (size_t pos = 0, size_t len = npos);
iterator erase (const_iterator p);
iterator erase (const_iterator first, const_iterator last);
اولی برای حذف کردن ترتیبی است . که پارامتر اول شماره ی نویسه ی اولی رو میگیره و دوم طول رو میگیره . یعنی از شماره نویسه اول تا طول تک تک نویسه ها رو پاک میکنه .
دومی یک iterator رو میگیره که به نویسه مورد نظر اشاره میکنه و اون رو پاک رو میکنه .
سومی هم مثل اولی هست . ولی با iterator ها کار میکنه . یک iterator شروع رو میگیره و یک iterator پایان هم میگیره پ بین این ۲ تا (به اضاقه هر دوی itreator ) رو پاک میکنه .
iterator چیست ؟
// string::erase
#include <iostream>
#include <string>
int main ()
{
std::string str ("This is an example sentence.");
std::cout << str << '\n';
// "This is an example sentence."
str.erase (10,8); // ^^^^^^^^
std::cout << str << '\n';
// "This is an sentence."
str.erase (str.begin()+9); // ^
std::cout << str << '\n';
// "This is a sentence."
str.erase (str.begin()+5, str.end()-9); // ^^^^^
std::cout << str << '\n';
// "This sentence."
return 0;
}
منبع : http://www.cplusplus.com/reference/string/string/erase/