正则表达式替换字符串的一部分

时间:2015-10-07 13:32:52

标签: javascript regex

我需要替换字符串的一部分,它是动态生成的,所以我永远不会知道字符串是什么。

这是一个例子" session12_2"我需要用变量替换最后的2。 "会话"文本将始终相同,但数字将会更改。

我尝试过标准替换,但是没有用(我没想到)。

这是我尝试的内容:

col1 = col1.replace('_'+oldnumber+'"', '_'+rowparts[2]+'"');

编辑:我正在寻找一个注册代码,当它被发现为字符串的一部分时,它将取代' _' + oldnumber。

2 个答案:

答案 0 :(得分:4)

如果你总是将“_”(下划线)作为分隔符,你可以这样做:

 str = str.split("_")[0]+"_"+rowparts[x];

这样你就可以使用下划线拆分字符串,然后用你喜欢的方式完成它,不需要正则表达式。

答案 1 :(得分:0)

var re = /session(\d+)_(\d+)/; 
var str = 'session12_2';
var subst = 'session$1_'+rowparts[2]; 

var result = str.replace(re, subst);

测试:https://regex101.com/r/sH8gK8/1