第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在JavaScript中替換所有出現(xiàn)的字符串

如何在JavaScript中替換所有出現(xiàn)的字符串

森林海 2019-05-21 15:44:25
如何在JavaScript中替換所有出現(xiàn)的字符串我有這個字符串:"Test abc test test abc test test test abc test test abc"干str = str.replace('abc', '');似乎只刪除了abc上面字符串中的第一次出現(xiàn)。如何更換所有出現(xiàn)的內(nèi)容?
查看完整描述

3 回答

?
三國紛爭

TA貢獻(xiàn)1804條經(jīng)驗 獲得超7個贊

str = str.replace(/abc/g, '');

回應(yīng)評論:


var find = 'abc';

var re = new RegExp(find, 'g');


str = str.replace(re, '');

在回應(yīng)Click Upvote的評論時,您可以進(jìn)一步簡化它:


function replaceAll(str, find, replace) {

    return str.replace(new RegExp(find, 'g'), replace);

}

注意:正則表達(dá)式包含特殊(元)字符,因此盲目傳遞上述函數(shù)中的參數(shù)find而不預(yù)先處理它以逃避這些字符是危險的。這在Mozilla開發(fā)者網(wǎng)絡(luò)的正則表達(dá)式JavaScript指南中有所介紹,它提供了以下實用程序功能:


function escapeRegExp(str) {

    return str.replace(/([.*+?^=!:${}()|\[\]\/\\])/g, "\\$1");

}

因此,為了使上述replaceAll()功能更安全,如果您還包括以下內(nèi)容,可將其修改為以下內(nèi)容escapeRegExp:


function replaceAll(str, find, replace) {

    return str.replace(new RegExp(escapeRegExp(find), 'g'), replace);

}


查看完整回答
反對 回復(fù) 2019-05-21
?
躍然一笑

TA貢獻(xiàn)1826條經(jīng)驗 獲得超6個贊

注意:不要在實際代碼中使用它。


作為簡單文字字符串的正則表達(dá)式的替代,您可以使用


str = "Test abc test test abc test...".split("abc").join("");

一般模式是


str.split(search).join(replacement)

在某些情況下,這比使用replaceAll和正則表達(dá)式更快,但在現(xiàn)代瀏覽器中似乎不再是這種情況。因此,這應(yīng)該只是用作快速入侵,以避免需要轉(zhuǎn)義正則表達(dá)式,而不是真正的代碼。


查看完整回答
反對 回復(fù) 2019-05-21
  • 3 回答
  • 0 關(guān)注
  • 1092 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號