正则表达式在捕获组后用数字替换?

Jak*_*son 5 regex

我有这样的正则表达式模式:

([0-9]*)xyz
Run Code Online (Sandbox Code Playgroud)

我希望做这样的替换:

$10xyz
Run Code Online (Sandbox Code Playgroud)

问题是,它$1是一个捕获组,而这0只是我想要替换的数字.但正则表达式认为我要求捕获组$10而不是$1之后的零.

如何引用捕获组并立即使用数字跟随它?

在这种情况下使用JavaScript.

更新如下所述,我的代码确实运行良好.我使用的正则表达式测试程序被意外设置为PCRE而不是JavaScript.

hwn*_*wnd 5

你的代码确实工作得很好。在 JavaScript 正则表达式替换语法$10引用捕获组10。但是,如果10尚未设置组,则会1插入组,然后插入文字0

var r = '123xyz'.replace(/([0-9]*)xyz/, '$10xyz');
console.log(r); //=> "1230xyz"
Run Code Online (Sandbox Code Playgroud)