我使用以下代码替换Windows操作系统中system date
格式的特殊字符。
但我只能替换一个角色。
代码:
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string str("10/16/13");
string str2("/");
str.replace(str.find(str2),str2.length(),"-");
cout << str << endl;
return 0;
}
输出:
10-16/13
答案 0 :(得分:12)
如果您只想替换单个字符,则可以使用<algorithm>
标题中的std::replace
:
std::replace(str.begin(), str.end(), '/', '-');
这将用'/'
替换字符串中的所有'-'
。
答案 1 :(得分:-1)
看起来你必须手动替换
for (int i=0; i < str.length(); i++){
if (str[i] == '/')
str[i] = '-';
}