MFC中CString有Replace()函数可以替换字符穿中所有字符的功能,而std::string却没有,但我们可以自己进行实现:
#include <iostream>
#include <string>
using namespace std;
void string_replace(string& pstr, string pstrold, string pstrnew)
{
string::size_type nfind = 0;
do
{
nfind = pstr.find(pstrold,nfind);
if(nfind != string::npos)
{
pstr.replace(nfind,pstrold.length(),pstrnew);
nfind += pstrnew.length();
}
else
{
break;
}
}
while(nfind!=string::npos);
}
int main()
{
string l_str = "testakdkdltesttest123testmy";
string_replace(l_str,"test","");
cout<<" replace string:"<<l_str<<endl;
return 0;
}