2 个回答

$& 代表匹配的字符串,不包含(?=)里面的内容

Specifying a string as a parameter
https://developer.mozilla.org...

(?=) 表示匹配前面表达示后面的内容,不占匹配宽度。
(?:\d{3})+\b) 匹配3个数字,可以重复1次以上
\b 表示边界
num.replace(正则, function($) {
// 第一个参数和上面的$& 相同意思,后面的第n个参数分别代表 $1, $2, $3, $n.
console.log($); // 这样就可以看到替换的过程了
return $;
}); 

推荐一个网站,可以看到匹配的过程
https://regex101.com/r/DAcXTU/2

$& 与正则相匹配的字符串
$1,$2,$,3,…,$n 匹配结果中对应的分组匹配结果
var s='测试正则表达式';
s.replace(/正则表达式/,'{$&}');//测试{正则表达式}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题