我需要你的帮助,
我有以下功能。正在发生的事情是,当它执行时,它将我的本机文件号 (x) 更改为 XAI-2012-402518,而它应该在末尾添加一个 -2,然后每次递增它。
期望的结果是:XAI-2012-402517-2
而不是XAI-2012-402518
通常,字符串中没有任何破折号,它工作得很好,但我认为该函数混淆了破折号。
其他例子是:
filenumber -> filenumber-2
filenumber2 -> filenumber-3
XAI-2012-402517 -> XAI-2012-402517-2
XAI-2012-402517-2 -> XAI-2012-402517-3
XAI-2012-402517-3 -> XAI-2012-402517-4
等等。
function test2(){
var x = "XAI-2012-402517"
x = x.replace(/^(.+?)(-\d+)?$/, function(a,b,c) { return c ? b+(c-1) : a+'-2'; } );
alert(x)
}