如何替换字符串中出现的所有字符?
用< c ode>std::string另一个字符替换所有出现的字符的有效方法是什么? #1楼 我以为我也会在 增强解决方案中 投入: #include <boost/ algorithm /string/replace.hpp> // in place std::string in_place = "blah#blah"; boost::replace_all(in_place, "#", "@"); // copy const std::string input = "blah#blah"; std::string output = boost::replace_all_copy(input, "#", "@"); #2楼 问题集中在 character 替换上,但是,由于我发现这个页面非常有用(特别是 Konrad 的评论),我想分享这个更通用的实现,它允许处理 substrings : std::string ReplaceAll(std::string str, const std::string& from, const std::string& to) { size_t start_pos = 0; while((start_pos = str.find(from, start_pos)) != std::string::npos) { str.replace