var s = "q1w1e1r";
s.split("1"); // ["q", "w", "e", "r"]
s.split(/1/); // ["q", "w", "e", "r"]
s.split(/(1)/); // ["q", "1", "w", "1", "e", "1", "r"]
我试了一下,发现 加不加括号都只能分割成["asdfasdf","asdfasdf"]
使用小括号指定一个子表达式后,匹配这个子表达式的文本(也就是此分组捕获的内容);
1 var data="asdfasdf<span>aa</span>asdfasdf", 2 regValue=/(<span\s?[^\>]*>.*?<\/span>)/gi, 3 __regValue = /<span\s?[^\>]*>.*?<\/span>/gi, 4 data= data.split(regValue), 5 __data = data.split(__regValue); 6 console.log(data); 7 console.log(__data); 8 // data输出 // ["asdfasdf", "<span>aa</span>", "asdfasdf"] 9 // __data输出 //["asdfasdf", "asdfasdf"]