不能取代"?" 通过"$",它太奇怪了

vie*_*ean 4 javascript

我想替换下面的陈述:

"(?)".replace("?", "$'")
Run Code Online (Sandbox Code Playgroud)

我的期望是:

($')
Run Code Online (Sandbox Code Playgroud)

但结果实际上是:

())
Run Code Online (Sandbox Code Playgroud)

我该如何更正我的代码?

Bry*_*hen 6

$$'如果你想要替换你需要使用$'因为$'是一种特殊的替换模式

插入匹配子字符串后面的字符串部分.

所有可用的模式是:

$$插入"$".

$&:插入匹配的子字符串.

$`:插入匹配子字符串之前的字符串部分.

$':插入匹配子字符串后面的字符串部分.

$ n或$ nn:其中n或nn是十进制数字,插入第n个带括号的子匹配字符串,前提是第一个参数是RegExp对象.

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/String/replace