如何从字符串中找到特定的特殊字符并将其替换为unicode\u0026+=\u002B
只替换这些特殊字符:[$,&,+,#]
例如:";你好,詹姆斯(和我一起(\n+++查看&字段4-B+++
我的代码
var char = '+';
var saa =char.charCodeAt(0);
console.log(saa)
var codeHex = saa.toString(16).toUpperCase();
while (codeHex.length < 4) {
codeHex = "0" + codeHex;
}
var afteruni = name.replaceAll('+','\u'+codeHex)
String.prototype.replaceAll = function(search, replacement) {
var target = this;
return target.replace(new RegExp(search, 'g'), replacement);
};
我想要这样的:
"你好,詹姆斯(和我一起(\n\u002B\u002B\u002B参见\u0026字段4-B\u002B\u002B\u002B";
错误:无效的正则表达式:/+/:没有可重复的内容\
您不需要重新定义replaceAll
-为什么要这样做?replaceAll
已经给你一个正确的回应:
只需更换线路:var afteruni = name.replaceAll('+','\u'+codeHex)
带var afteruni = name.replaceAll(/+/g,'\u'+codeHex)
iv在我的电脑上运行它,它正在工作。