javascript中得到正则结果一些小技巧

语法: stringObject.replace(regexp/substr,replacement)
regexp/substr 必需。规定子字符串或要替换的模式的 RegExp 对象。
请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。
replacement   必需。一个字符串值。规定了替换文本或生成替换文本的函数。

常规做法:

var str = '1a2d3b4ada5d6g7j', arr = [], j;
var match = str.match(/\d/g, str);
for(var i = 0, j = match.length; i < j; i++) 
{
    arr.push(match[i]);
}
console.log(arr);

另一两种快捷方法:

var str = '1a2d3b4ada5d6g7j', arr = [];
str.replace(/\d/g, function() {
    arr.push(arguments[0]);
});
console.log(arr);


var str = '1a2d3b4ada5d6g7j', arr = str.replace(/\D/g,' ').split(' ');
console.log(arr);

相关推荐