2 回答

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
如果需要matchAll,請(qǐng)?jiān)谥С值那闆r下使用它:
var responseData = "<dbname>hhh</dbname>hhh<dbname>hhh3</dbname>";
var regex = new RegExp('<dbname>(.*?)(?=</dbname>)', 'g');
console.log(Array.from(responseData.matchAll(regex), x=>x[1]));
// => ["hhh","hhh3"]
您還可以使用exec:
var responseData = "<dbname>hhh</dbname>hhh<dbname>hhh3</dbname>";
var regex = new RegExp('<dbname>(.*?)(?=</dbname>)', 'g');
while(match=regex.exec(responseData)){
console.log(match[1]);
}

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊
matchAll
很新,它只適用于某些瀏覽器。它適用于 Chrome、FX、Edge 和 Safari,但舊版和移動(dòng)瀏覽器可能需要 shim/polyfill。
這是一個(gè)關(guān)于使用填充程序向舊版瀏覽器添加功能的好答案:https ://stackoverflow.com/a/58003501/905
添加回答
舉報(bào)