函数一:
std::string CheckString(std::string& strSource)
{
std::string strOldValue = "'";
std::string strNewValue = "''";
for(std::string::size_type pos(); pos != std::string::npos; pos += strNewValue.length())
{
if ((pos = strSource.find(strOldValue, pos)) != std::string::npos)
{
strSource.replace(pos, strOldValue.length(), strNewValue);
}
else
{
break;
}
}
return strSource;
}
方法二:
std::string& replace_all_distinct(std::string& str,const std::string& old_value,const std::string& new_value)
{
for(std::string::size_type pos(); pos!=std::string::npos; pos+=new_value.length())
{
if((pos=str.find(old_value,pos)) != std::string::npos)
str.replace(pos,old_value.length(),new_value);
else
{
break;
}
}
return str;
}
使用:
例如:
replace_all_distinct("sub'ject","'","''");
CheckString("subj'e'ct");
字符串中有单引号