JavaScript:查找正则表达式匹配的数字

时间:2013-04-28 23:22:13

标签: javascript regex replace

在JavaScript中,我在正则表达式上使用全局标志来替换字符串。代码如下。

var string = "$$";
string = string.replace(/\$+/g, '"\'$$\'"');

上面的代码会将$替换为新字符串"'$$'"

是否可以获得匹配的$的出现次数?例如,我想将$$$$替换为"'$$$$$$$$'"。为了做到这一点,我需要知道有四次出现。

2 个答案:

答案 0 :(得分:6)

您可以捕获$的数量并将其替换为两次:

string = string.replace(/\$+/g, '"\'$&$&\'"');

$&取代了捕获的内容。

答案 1 :(得分:1)

你可以在替换方法中使用函数而不是字符串作为第二个参数,如下所示:

var string = '$$';

string = string.replace(/(\$+)/g, function(match, $1) { return $1+$1; })

有关替换方法的更多信息,请访问

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