我将变量的名称传递给javascript函数onmouseover事件。传入的变量以字母开头,以数字结尾,我想从变量名中提取数字。我怎么能这样做?
示例代码:
让我们说我们传入x = abc123
function(x){
extractednumber = parseInt(x.substring(2))
document.write(extractednumber);
}
编辑:变量名称前面有3个字符,后面有一个未知数字。
答案 0 :(得分:2)
一个简单的正则表达式模式:
x.match(/([0-9]*)$/)[0]
然后你可以写:
function(x){
extractednumber = parseInt(x.match(/([0-9]*)$/)[0]);
document.write(extractednumber);
}
答案 1 :(得分:1)
使用正则表达式解析字符串:
if (/(\d+)$/.test(x))
extractedNumber = parseInt(RegExp.$1, 10);
答案 2 :(得分:1)
function GetNumber(num)
{
var numberPart = num.replace (/[^\d]/g, “”); //use only digits
var extractednumber = parseInt(numberPart, 10);
return extractednumber;
}
答案 3 :(得分:1)
如果前面总是有三个字符,然后是一个未知数字的数字,你可以使用substr。
function(inputString) {
return inputString.substr(3, inputString.length);
}