简单的标准::字符串替换在C++

Simple std::string replace in C++

本文关键字:C++ 替换 字符串 标准 简单      更新时间:2023-10-16

我使用以下代码替换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

如果您只想替换单个字符,则可以使用 <algorithm> 标头中的std::replace

std::replace(str.begin(), str.end(), '/', '-');

这会将字符串中的所有'/'替换为 '-'

看起来您必须手动替换

for (int i=0; i < str.length(); i++){
    if (str[i] == '/')
        str[i] = '-';
}