0

所以我的想法是这样的..

var songList = ["1. somesong.mid","13. abcdef.mid","153. acde.mid"];
var newString = myString.substr(4); // i want this to dynamically trim the numbers till it has reached the .

// 但我想删除 1. 13. 153. 等等。// 我的数组中有更多的值,开头有不同的“数字”

所以我遇到了麻烦谁能帮我找到一个更简单的解决方案,它可以动态地砍掉第一个字符直到'。?

4

2 回答 2

0

你可以做类似的事情

var songList = ["1. somesong.mid","13. abcdef.mid","153. acde.mid"];
songList.forEach(function(value, i){
    songList[i] = value.replace(/\d+\./, ''); //value.substr(value.indexOf('.') + 1)
});

演示:小提琴

于 2015-03-09T03:26:25.310 回答
0

您可以使用 string.match()方法提取部分直到并包括第一个部分.,如下所示:

var newString = myString.match(/[^.]*./)[0];

这假设会有一场比赛。如果您需要允许不发生匹配,那么也许:

var newString = (myString.match(/[^.]*./) || [myString])[0];

如果你说你想删除数字并保留字符串的其余部分,那么一个简单的.replace()就可以了:

var newString = myString.replace(/^[^.]*. */, "");
于 2015-03-09T03:27:21.460 回答