4 回答

TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
js提供的字符串替換函數(shù)replace可以將字符串中符合條件的字符串替換成目標(biāo)字符串。但是一般使用字符串進(jìn)行查找替換只能替換第一個(gè)符合條件的結(jié)果。如 var str = 大家都是男人嗎,難道不是嗎!; str = str.replace('嗎', '嘛'); alert(str); var str = 大家都是男人嗎,難道不是嗎!;str = str.replace('嗎', '嘛');alert(str); 上述代碼中只有第一個(gè)嗎被替換,輸出結(jié)果是大家都是男人嘛,難道不是嗎! ,嘿嘿 如果想全部替換字符串中全部符合條件的內(nèi)容,用正則表達(dá)式替換是個(gè)不錯(cuò)的辦法,如下代碼可以實(shí)現(xiàn)全部替換 var str='大家都是男人嗎,難道不是嗎?'; str = str.replace(/嗎/g, '嘛'); alert(str); var str='大家都是男人嗎,難道不是嗎?';str = str.replace(/嗎/g, '嘛');alert(str); 這樣就會(huì)輸出大家都是男人嘛,難道不是嘛?,全部符合條件的內(nèi)容都被替換了,特別要注意的是正則表達(dá)式 /嗎/g 這里的g,這個(gè)g表示全局,不給這個(gè)配置項(xiàng)是不會(huì)全部替換的。 當(dāng)然通過(guò)復(fù)雜的正則表達(dá)式,js的replace還能實(shí)現(xiàn)更豐富的字符串替換處理效果的。

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
由于js中沒(méi)有類似replaceAll函數(shù)。
可以使用 正則表達(dá)式的全局查找功能 進(jìn)行替換。
1234 | var s= "alsjfdialsdjflkjasldf" ; // 源字符串 var p=/a/g; // 正則表達(dá)式,匹配字符a,其中g(shù)為全局查找標(biāo)記。若 var p=/a/; 只能替換第一個(gè)a。 var v=s.replace(p, "" ); //替換。也可直接 s.replace(/a/g,""); alert(v); |
添加回答
舉報(bào)