你的浏览器不支持canvas

文本截取{}的内容,生成新数组

var str = '{测试测试测试}测试111{测试121212}撒大声地{撒大声地}sadhavbsd'
var arr = str.match(/\{(.*?)\}/g) || [];// ["{测试测试测试}", "{测试121212}", "{撒大声地}"]
var container = [];
for(var i=0;i<arr.length;i++){
    var index = str.indexOf(arr[i]) + arr[i].length; // 对应下标
    var len = str.length;// 对应字长
    container.push(str.substring(0,str.indexOf(arr[i])))// 截取{}前面部分
    container.push(arr[i]);// {}包含部分
    str = str.substring(index,len)// {}后面部分再进行遍历
    if(str && str.indexOf('{')<0){// 不包含{}符号
        container.push(str);
    }
}
console.log(container)//["", "{测试测试测试}", "测试111", "{测试121212}", "撒大声地", "{撒大声地}", "sadhavbsd"]

 

posted @ 2021-05-14 16:51  云上丶无忧  阅读(122)  评论(0编辑  收藏  举报

来场流星雨,吧