用另一个字符序列替换 C++ std::string 中的 character/sequence 个字符
Replace a character/sequence of characters in a C++ std::string with another sequence of characters
我想用 &
替换 std::string
中出现的所有 &
。这是代码片段
codelink
#include <algorithm>
#include <string>
#include <iostream>
int main()
{
std::string st = "hello guys how are you & so good & that &";
std::replace(st.begin(), st.end(), "&", "&");
std::cout << "str is" << st;
return 1;
}
显示std::replace不能替换字符串的错误,但它只适用于字符。
我知道我仍然可以通过逻辑来完成我的工作,但是有任何干净的 C++ 方法可以做到这一点吗?有内置函数吗?
regex replace 可以使这更容易:
#include <algorithm>
#include <string>
#include <iostream>
#include <regex>
int main()
{
std::string st = "hello guys how are you & so good & that &";
st = std::regex_replace(st, std::regex("\&"), "&");
std::cout << "str is" << st;
return 1;
}
我想用 &
替换 std::string
中出现的所有 &
。这是代码片段
codelink
#include <algorithm>
#include <string>
#include <iostream>
int main()
{
std::string st = "hello guys how are you & so good & that &";
std::replace(st.begin(), st.end(), "&", "&");
std::cout << "str is" << st;
return 1;
}
显示std::replace不能替换字符串的错误,但它只适用于字符。 我知道我仍然可以通过逻辑来完成我的工作,但是有任何干净的 C++ 方法可以做到这一点吗?有内置函数吗?
regex replace 可以使这更容易:
#include <algorithm>
#include <string>
#include <iostream>
#include <regex>
int main()
{
std::string st = "hello guys how are you & so good & that &";
st = std::regex_replace(st, std::regex("\&"), "&");
std::cout << "str is" << st;
return 1;
}