【发布时间】:2020-11-26 00:26:34
【问题描述】:
我开始学习 C++,我的任务是替换文本中的一些字符。类似于模板的东西下面是一些例子:
<h1>Title</h1>$ js $<p>text...</p>
结果:
<h1>Title</h1> </script>alert(1)</script> <p>text...</p>
我试图用这段代码来做,但没有任何效果:
#include <iostream>
#include <string>
using namespace std;
int main(){
string text = "<h1>Title</h1>$ js $<p>text...</p>";
string js_code = " </script>alert(1)</script> ";
string result = text.replace(text.find("$ js $"), js_code.length(), js_code);
cout << result << endl;
return 0;
}
结果:
<h1>Title</h1> </script>alert(1)</script>
文本被插入到该行中,但该文本之后的所有内容都消失了。另外,有时我会使用俄语字符,它们是 UTF-8 编码的。 1 个符号更重。
【问题讨论】:
-
“1 个符号权重更多”是什么意思?
标签: c++