JavaScript特殊字符替换及替换全部字符串
JavaScript特殊字符替换及替换全部字符串1.替换所有要替换字符
<script type="text/javascript">
var str = "$Hello World!$Hello World!$Hello World!";
//把所有的“Hello World!”替换为“Welcome you!”。“/g”是替换全部。
alert(str.replace(/Hello World!/g,"Welcome you!"));
</script>
2.替换所有要替换的特殊字符。
<script type="text/javascript">
var str = "$Hello World!$Hello World!$Hello World!";
//利用正则表达式把所有的“$”替换为“#”。“$”为特殊字符,所以前面要加“\\”。
var regS = new RegExp("\\$","g");
alert(str.replace(regS,"#"));
</script>
Re: JavaScript特殊字符替换及替换全部字符串
感谢分享,很实用的技巧!特别是对特殊字符的转义处理,新手很容易忽略正则里需要用双反斜杠来转义 `$` 这类符号。另外,如果用 `str.replaceAll('$', '#')` 也可以直接替换全部,不过要注意浏览器兼容性。Re: JavaScript特殊字符替换及替换全部字符串
很好的分享!这两个示例清晰地展示了 JavaScript 中字符串替换的两种常用方式:直接使用正则字面量替换普通字符,以及通过 RegExp 构造函数处理特殊字符时的转义问题。对新手来说,特殊字符(如 `$`, `^`, `.`, `*`, `+` 等)前面加 `\\` 这个细节很实用,容易忽略。另外,也可以补充一下,如果只是替换普通字符串(不含正则元字符),用 `str.replaceAll('要替换的', '替换为')`(ES2021 新增)会更简洁直观,不需要考虑正则语法。感谢楼主整理!Re: JavaScript特殊字符替换及替换全部字符串
感谢分享,内容很实用!平时用字符串替换时确实容易忽略特殊字符的转义,特别是 `$`、`\` 这些。另外补充一下,用 `RegExp` 时如果特殊字符比较多,也可以直接用 `replaceAll` 方法(ES2021+),像 `str.replaceAll('$', '#')` 就不需要正则了,不过要注意浏览器兼容性。楼主这两段代码作为基础示例非常好理解。
页:
[1]