0

我有这个字符串:

01-08-2011_11-08-20113-我的身份-我的姓名-1.tif

我想在第三次出现 ("-") 时从字符串的末尾拆分,因为在字符串的开头,长度可能会改变。这就是我想要的:

我的身份-我的名字-1.tif

我不想使用sliceand pop。我只想使用split, lastindexof,substringindexof.

请问有什么建议吗?

4

2 回答 2

2
myStr.replace(/^.*-([^-]+-[^-]+-[^-]+)$/, '$1')

这将捕获最后三个破折号之间的所有内容,并仅用该部分替换整个字符串。

于 2013-02-20T13:46:55.257 回答
0

我确信有更好的方法来做到这一点 - 因为我对 js 很陌生,但下面的方法确实有效。这是基于您不使用拼接和弹出的请求。

var input = "01-08-2011_11-08-20113-My Id-MY Name-1.tif";
var sc = input.split("-");
var r1 = sc[sc.length-1]
var r2 = sc[sc.length-2]
var r3 = sc[sc.length-3]
var rtn = [r3,r2,r1].join("-")
alert (rtn) //returns: My Id-MY Name-1.tif
于 2014-04-10T22:33:08.317 回答