Rumah > Soal Jawab > teks badan
有字符串abc"xxx","yyy"def,用javascript正则如何获取xxx和yyy?
不能带有引号"。
我自己写了一个:
const reg = /\"(.*?)\"/; reg.exec (abc"xxx","yyy"def);//只能获取第一个xxx
如果去掉正则表达式中的?,则获取xxx","yyy
请问这个正则表达式该如何写?
三叔2016-11-04 10:04:43
因为js不支持先行断言(?<="),所以不好一次性获取成功。那就写个方法,解决问题。不会获取中间的逗号和两边的引号:
function getStr(str) { var result = str.match(/\"\w*\"/g); return result.map(function(element){ return element.replace(/\"/g, ''); }); } getStr('abc"xxx","yyy"def'); //["xxx", "yyy"]