我正在尝试将String.replace()
与正则表达式一起使用来替换匹配的表达式。
像这样:
var newStr = loc.replace(/Slide(\d*)/,(i+1));
此表达式转为
https://xxxxxxx.net/qa/club/Slide1.PNG
到
https://xxxxxxx.net/qa/club/1.PNG
我只想在“幻灯片”之后替换数字,而不删除单词。我怎么能这样做?
答案 0 :(得分:3)
使用捕获组并将其插入替换组中。
loc.replace(/(Slide)\d*/, '$1' + (i+1));
如果单词总是滑动,那么你可以简单地使用它而不捕获任何东西
loc.replace(/Slide\d*/, 'Slide' + (i+1));
围绕(i + 1)的约束对于在字符串连接之前强制进行数学运算很重要。
如果Slide
后跟一个数字,请将*
更改为正则表达式中的+
。