javascript - 替换 Javascript 中的 $n1 - $nx

标签 javascript

我想用很多 $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 );

但这仅替换了$

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

最佳答案

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

\$(n[1-5])

enter image description here

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

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

console.log(final)

关于javascript - 替换 Javascript 中的 $n1 - $nx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58611357/

相关文章:

javascript - Discord.js 获取所有成员并分别标记它们

javascript - 使用 JavaScript 检测文件系统上的页面何时发生更改

javascript - 一个按钮在不同的点击下调用两个不同的功能

javascript - 正则表达式:在字符串的开头/结尾匹配所需的字符

javascript - 基于 if 语句对两个数组进行分组?

c# - ASP.NET 下拉列表的替代方案

javascript - css/javascript 固定正方形与其他元素在访问 x/y 与 z-index

javascript "include"策略

javascript - Ajax (XMLHttpRequest) 对象在使用后会清理吗?

javascript - 如何在原型(prototype)链中找到构造函数的根原型(prototype)构造函数?