如何搜索字符串并将每个双引号替换为2个双引号?(C++)
- 论坛
- 如何搜索字符串并将每个双引号替换为2个双引号?(C++)
21 浏览
如何搜索字符串并将每个双引号替换为2个双引号?(C++)
这个问题已经有答案:
像这样的东西能行吗?我看了一些指南,它们似乎不能用于将单个字符替换为两个或更多个字符。
for (int i = 0; i < s.length(); i++){ if(s[i] == '\"') s[i] = '\"\"'; } cout << s;
admin 更改状态以发布 2023年5月20日
匿名的
0 Comments
您的代码不会按照您的预期运行。
您要求 std::string
将一个包含两个字符的常量 '\"\"'
赋值给一个只能容纳单个字符的插槽。
请在您所喜爱的 C++ 参考文献中查找 basic_string
章节 中的方法,将字符串或多个字符插入字符串中。
编辑 1 - 示例
std::string::size_type position = 0; position = s.find('"'); while (position != std::string::npos) { s.insert(position, "\""); position += 2; position = s.find('"'); }