首页 > 想请教一下用js如何分段的截取字符串。

想请教一下用js如何分段的截取字符串。

我想用js对一段字符串进行裁剪并返回对应的数组,比如我想对一段字符串中连续的3个数字裁剪出来。
例如:

var str = '12d123456f58965';

通过裁剪后得到一个数组为:

arr = [123,456,589];

这该怎样做?我本来想用split去截取发现行不通,有点学艺不精。。。


var str = '12d123456f58965';
    
function getArr(str) {
    var strlen,
        arr = [];
    strlen = str.length;
    for(var i = 0; i < strlen; i += 3){

        var tmpstr = Number(str.slice(i,i+3));
       if(!isNaN(tmpstr)){
            arr.push(tmpstr);
        }
    }
    return arr;
}

var arr = getArr(str);

str.slice(start,stop):从字符串的start位置开始,到stop位置结束,截取字符串,并返回截取到的字符串。


'12d123456f58965'.match(/d{3}/g)


'12d123456f58965'.match(/\w{3}/g)

可以用substr呀。还有,不管任何方法,你都得能确定你的字符串符合一定规律才行。不能随便来一个字符串,如果没有规律可言,你可能就需要对字符串进行处理一下。


var str = '12d123456f58965';
var ret = str.match(/\d{3}/g);
【热门文章】
【热门文章】