首页 > 解决方案 > 在 Javascript 中替换 $n1 - $nx

问题描述

我想用很多$n1-替换其中的文本$n5。像这样的东西:

var str = "Text $n1 Text $n2 Text $n3 ...";

str = str.replace( /$n1/g, 'n1' );
str = str.replace( /$n2/g, 'n2' );
str = str.replace( /$n3/g, 'n3' );
str = str.replace( /$n4/g, 'n4' );
str = str.replace( /$n5/g, 'n5' );

但这显然行不通。

我也试过

str = str.replace( /\$n1/g, n1 );

但这只会取代$

我很惊讶我没有找到$一个字母和数字组合的解决方案。也许它已经在某个地方得到了回答,但我找不到它。

标签: javascript

解决方案


您可以使用捕获组和字符类

\$(n[1-5])

在此处输入图像描述

var str = "Text $n1 Text $n2 Text $n3 ...";

let final = str.replace(/\$(n[1-5])/g, (_, g1) => g1)

console.log(final)


推荐阅读