奇怪的Javascript正则表达式替换反向引用行为
为什么下面的js表达式:奇怪的Javascript正则表达式替换反向引用行为,javascript,regex,Javascript,Regex,为什么下面的js表达式: "test1 foo bar test2".replace(/foo.bar/, "$'") 结果是以下字符串 "test1 test2 test2" 替换字符串中的$”是否是某种控制代码,用于包含匹配后的所有内容 这种行为在一天的大部分时间里都在折磨我。有人能解释一下吗 非常感谢 ps-在我测试过的所有浏览器中都是这样的在regex replace参数中,您需要转义$: "test1 foo bar test2".replace(/foo.bar/, "$$'"
"test1 foo bar test2".replace(/foo.bar/, "$'")
结果是以下字符串
"test1 test2 test2"
替换字符串中的$”
是否是某种控制代码,用于包含匹配后的所有内容
这种行为在一天的大部分时间里都在折磨我。有人能解释一下吗
非常感谢
ps-在我测试过的所有浏览器中都是这样的在regex replace参数中,您需要转义
$
:
"test1 foo bar test2".replace(/foo.bar/, "$$'")
$”
插入匹配子字符串后面的字符串部分。请参见。右侧,酷。我知道你需要避开美元符号(比如0美元或1美元),但我不知道美元是用来做什么的。谢谢你的链接