为什么我的JavaScript replace方法用正则替换时总是出现奇怪的结果?

2026-03-30 08:190阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1302个文字,预计阅读时间需要6分钟。

为什么我的JavaScript replace方法用正则替换时总是出现奇怪的结果?

测试的代码片段:`jesse$+查看代码:JavaScript代码+复制代码如下:$id(f_msg_grow_1).innerHTML=msg[not_club][grow_value].replace(/\BNICK_NAME\B/g, this.info[friend][nick_name]);+看代码很快可以注意到两点:`


测试的昵称:jesse$<

查看代码:Javascript代码
复制代码 代码如下:
$id("f_msg_grow_1").innerHTML=msg["not_club"]["grow_value"].replace(/\{NICK_NAME}/,this.info["friend"]["nick_name"]);

看代码很快可以注意到两点:“replace 正则”和“$ ”。

在js 中replace 支持正则表达式,而$ 又恰好是正则向后匹配的特殊字符,很容易想到是正则引起的问题。而据我所知正则向后引用只有$1 、$2 、$3 、$4…… ,而这里只有一个”$” 没有数字。

昵称“jesse$< ”在后台经html 特殊字符处理,传到前端是:“jesse$&lt; ”,看页面结果注意到“$” 后的“&” 的也被替换了。
阅读全文
标签:昵称

本文共计1302个文字,预计阅读时间需要6分钟。

为什么我的JavaScript replace方法用正则替换时总是出现奇怪的结果?

测试的代码片段:`jesse$+查看代码:JavaScript代码+复制代码如下:$id(f_msg_grow_1).innerHTML=msg[not_club][grow_value].replace(/\BNICK_NAME\B/g, this.info[friend][nick_name]);+看代码很快可以注意到两点:`


测试的昵称:jesse$<

查看代码:Javascript代码
复制代码 代码如下:
$id("f_msg_grow_1").innerHTML=msg["not_club"]["grow_value"].replace(/\{NICK_NAME}/,this.info["friend"]["nick_name"]);

看代码很快可以注意到两点:“replace 正则”和“$ ”。

在js 中replace 支持正则表达式,而$ 又恰好是正则向后匹配的特殊字符,很容易想到是正则引起的问题。而据我所知正则向后引用只有$1 、$2 、$3 、$4…… ,而这里只有一个”$” 没有数字。

昵称“jesse$< ”在后台经html 特殊字符处理,传到前端是:“jesse$&lt; ”,看页面结果注意到“$” 后的“&” 的也被替换了。
阅读全文
标签:昵称