今天没啥事,想着写点什么,用一个方法去介绍js字符串,而且这个方法还要有用,让我想到了写python爬虫解析字符串的日子
然后就有了这个例子,希望对你有帮助
调用部分:
var str = '[ {id=100,name="qc"},{id=101,name="ym"}]';
var idArr = getIdArr(str);
console.log(idArr) //[100,101];
实现的方法:
function getIdArr(bankstr){
//首先去掉所有空字符
var bank = bankstr.replace(/\s*/g,"");
//然后把开头和结尾的中括号去掉
var str = bank.substring(1,bank.length-1);
// 将{id=100,name="qc"},{id=101,name="ym"} 改编为“!”作间隔 eg :{id=100,name="qc"}!{id=101,name="ym"}
// "{," 是我们需要转化的部分, /g表示全局转变,转变成"}!"
str = str.replace(/},/g,"}!");
//然后将字符串通过“!”拆分成数组,数组单个元素形态{id=100,name="qc"}
var arr = str.split("!");
//创建一个接收id的新数组
var idArr = [];
for(var i = 0; i< arr.length;i++){
//得到数组单个元素
var itemstr = arr[i];
//去掉外层的大括号
itemstr = itemstr.substring(1,arr[i].length-1);
//通过“,”拆分为两个等式
var isarr = itemstr.split(",");
//我们拿到数组中的第一个,也就是 id=xxx这个
var idstr = isarr[0];
//然后通过“=”拆分拿到后边的xxx
idstr = idstr.split("=")[1];
//将结果放进数组里
idArr.push(idstr);
}
return idArr;
}