用句点替换字符串不起作用
replacing string with a period isn't working
我试图混淆网页上的电子邮件地址。我有一个正则表达式,可以将 @ 转换为 xy,将句点转换为 yy。这是有效的。我有一个 js,它在提交页面时执行以将它们转换回来,但这不起作用。该脚本是:
function undo(){
var oldfield = document.getElementById('hchtest').value;
var newfield = oldfield.replace("_xy_", "@");
var nu2field = newfield.replace("_yy_", "'.");
document.getElementById('hchtst2').value = nu2field;
}
不起作用的语句是 var nu2field = newfield.replace(yy, ".");
我已经尝试了我能想到的所有组合(例如,没有转义字符,作为正则表达式等),但没有快乐。
我还想知道是否有可能通过消除多步骤替换来使其优雅。
任何帮助将不胜感激。
你不需要在字符串中转义.
。 .replace(/_yy_/g,'.')
应该可以正常工作。
此外,您还可以链接替换:
document.getElementById('hchtst2').value =
document.getElementById('hchtest').value.replace(/_xy_/g,'@').replace(/_yy_/g,'.');
但是,如果原始字符串包含_xy_
或_yy_
会发生什么?
你不想要这个吗?为什么要额外的底线?
var newfield = oldfield.replace("xy", "@");
var nu2field = newfield.replace("yy", "'.");
无论如何,这是另一种解决方案:
var newfield = oldfield.split("xy").join("@");
var nu2field = newfield.replace("yy").join(".");
还有一句话:
var newfield = oldfield.split("xy").join("@").split("yy").join(".");
相关文章:
- 替换变量时,JavaScript字符串replace()不起作用
- JavaScript Regex(?i)选项中字符串大小写不敏感的部分不起作用
- 替换字符串的脚本;在某些网站上不起作用
- 使用gulp-angular gettext从JS文件中提取字符串不起作用
- 想要将 JSON 字符串传递给 javascript 变量 [ JSON.parse(),eval()] 对我不起作用,
- 替换 JavaScript 中出现的所有字符串不起作用
- 将“”附加到在 IE 中不起作用的字符串
- 替换函数后的Javascript比较字符串不起作用
- 在javascript中使用PHP时间字符串后,倒计时不起作用
- 简单的PHP字符串检查不起作用
- jQuery,附加HTML字符串不起作用
- Javascript整数到字符串的强制转换不起作用
- Javascript字符串替换不起作用
- If.else语句检查NaN和空字符串是否在JavaScript中不起作用
- 字符串比较在d3.rgb中不起作用
- js字符串中字符的索引;对某些字符串不起作用
- 字符串到整数函数不'不起作用
- 来自JSP的字符串在JavaScript上不起作用
- jQuery |字符串替换不起作用
- 字符串替换在javascript中不起作用(使用双引号)