尝试提取字符串的子字符串,直到字符串的第一个数字

我正在尝试提取字符串的子字符串,直到该字符串的第一个数字。

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));

谢谢。

lingchuanhui 回答:尝试提取字符串的子字符串,直到字符串的第一个数字

您可以得到没有编号的第一部分。

function getNote(string) {
    return string.match(/^\D+/)[0];
}

var notes = ["D4","F#8","Abb2"];

console.log(notes.map(getNote));

本文链接:https://www.f2er.com/3131191.html

大家都在问