Javascript/jQuery:将字符串匹配 {x} 中的项目替换为 "jQuery('#resultsx').val()"



>我有一个包含公式的字符串,例如

{1}+{2}-{3}*{4}

我想将其转换为不同输入字段的值,例如

<input id="results1" value="15">
<input id="results2" value="25">
<input id="results3" value="35">
<input id="results4" value="45">

这样结果会像

15+25-35*45

然后计算为 -1535

希望我已经清楚地解释了我想做什么,但如果我还没有,请告诉我。我尝试过使用正则表达式,但只是无法完全理解它,我不确定这是否是我应该走的方向。

.replace()可以将函数作为第二个参数。 这将在这里有所帮助:

var equ = '{1}+{2}-{3}*{4}';
equ = equ.replace(/{(d+)}/g, function(match, $1){
    return $('#results'+$1).val();
});

最新更新