我有一个如下所示的字符串数组:
var array =[];
array.push("Complex12");
array.push("NumberCar1");
array.push("Protect5");
我想分割每个项目的字符串和数字。
var Id = parseInt(array[0].match(/\d/g));
var type = array[0].replace(/\d+/g, '');
但我只得到Id = 1(我想要12)并且输入=“复杂”,我错在哪里? 感谢
答案 0 :(得分:1)
我认为您在第一个正则表达式中错过了+
var Id = parseInt(array[0].match(/\d+/g));
答案 1 :(得分:0)
使用捕获组以一种模式执行此操作:
var mystr = "Complex12";
if (m = mystr.match(/^([a-z]+)([0-9]+)$/i)) {
var type = m[1];
var id = m[2];
}