And*_*y E 171
slice 在IE和其他浏览器中运行得很好,它是规范的一部分,它也是最有效的方法:
alert("xxx_456".slice(-3));
//-> 456
Run Code Online (Sandbox Code Playgroud)
slice方法(字符串) - MSDN
切片 - Mozilla开发人员中心
Psy*_*nic 71
var str = "xxx_456";
var str_sub = str.substr(str.lastIndexOf("_")+1);
如果它最后并不总是三位数(并用下划线分隔).如果结束分隔符并不总是下划线,那么您可以使用正则表达式:
var pat = /([0-9]{1,})$/;
var m = str.match(pat);
Dar*_*rov 24
该子方法允许你指定的开始和结束索引:
var str = "xxx_456";
var subStr = str.substring(str.length - 3, str.length);
Run Code Online (Sandbox Code Playgroud)
你可以将它拆分并获得最后一个元素
var string="xxx_456";
var a=string.split("_");
alert(a[1]); #or a.pop
Run Code Online (Sandbox Code Playgroud)
用于字符串末尾任意数量数字的简单正则表达式:
'xxx_456'.match(/\d+$/)[0]; //456
'xxx_4567890'.match(/\d+$/)[0]; //4567890
Run Code Online (Sandbox Code Playgroud)
或者确实使用 split/pop :
('yyy_xxx_45678901').split(/_/).pop(); //45678901
Run Code Online (Sandbox Code Playgroud)