使用“$”替换会产生奇怪的结果

时间:2013-03-11 23:46:13

标签: javascript

我正在尝试替换一些文字,如:

I need the %r for the bike.

%r被其他值替换的地方。

假设我将%r替换为$$$$

var text = 'I need the %r for the bike.';

return text.replace("%r", "$$$$");

而不是获得预期的结果:

I need the $$$$ for the bike.

我明白了:

I need the $$ for the bike.

这里有什么我想念的吗?

1 个答案:

答案 0 :(得分:4)

$是替换中的特殊字符,因为您需要$$才能在结果中获得一个$个符号。您需要额外的$个字符才能获得所需内容。有关详细信息,请参阅.replace() $$ - Inserts a "$" $& - Insert the matched substring $` - Inserts the portion of the string that precedes the matched substring $' - Inserts the portion of the string that follows the matched substring $n - Where n or nn are decimal digits, inserts the nth parenthesized submatch string, provided the first argument was a RegExp object.

替换字符串中的各种特殊序列是:

{{1}}