我正在尝试提取字符串的子字符串,直到该字符串的第一个数字。
var notes = ["D4", "F#8", "Abb2"];
note[0].substring(0,notes[0].indexOf(4);
//返回D,除掉1
但是,仅当第一个数字为4时,此方法才有效。我的notes数组中的其他项目具有不同的数字。
我试图修改我的代码,以使indexOf的参数是一个正则表达式,但它不起作用:
var reg = /^\d+$/;
notes[0].substring(0,notes[0].indexOf(reg));
谢谢。
您可以获得没有编号的第一部分。
function getNote(string) {
return string.match(/^\D+/)[0];
}
var notes = ["D4", "F#8", "Abb2"];
console.log(notes.map(getNote));