题目描述:
完成一个 extractStr
函数,可以把一个字符串中所有的 : 到 . 的子串解析出来并且存放到一个数组当中,例如:
extractStr('My name is:Jerry. My age is:12.') // => ['Jerry', '12']
注意,:
和 .
之间不包含 :
和 .
。也即是说,如果 ::abc..
,则返回 ['abc']
参考答案:
const extractStr = (str) => {
let res = [], arr = [];
res = str.match(/:([^\.:]*)\./g) ? str.match(/:([^\.:]*)\./g) : [];
console.log(res, 'res res');
for(let i = 0; i < res.length; i++) {
if(res[i] === ':.') {
arr.push('');
} else if(res[i].match(/[^\:.]+/g)) {
arr.push(...res[i].match(/[^\:.]+/g));
}
}
return arr;
}