js replace 全局替換


js 的replace 默認替換只替換第一個匹配的字符,如果字符串有超過兩個以上的對應字符就無法進行替換,這時候就要進行一點操作,進行全部替換。

<script language="javascript">
var strM = "這是要被替換的字符串啊啊!";
//在此我想將字母a替換成字母A
alert(strM.replace("啊","額"));
</script>

上面這段代碼,只能替換第一個字符“啊”,第二個“啊”就無法替換,這樣就沒辦法滿足大多數使用js(replace)的需求

<script type="text/javascript" language="javascript">
var s = "這是要被替換的字符換啊啊!";
alert(s);
alert(s.replace(/啊/g, "額"));

這樣,就可以實現整個字符串的替換。

我們這里用到了正則函數的/g全部的使用。這樣就可以實現整個字符串的替換效果。

下面,我們大家可能還有個需求無法滿足,那就是,我們替換定值可以使用這個,但是替換變量怎么使用?

接下來,就說一下替換變量的使用方式。

簡單介紹一下eval() 函數可計算某個字符串,並執行其中的的 JavaScript 代碼。接下來主要靠這個函數。

<script>
var ch = "變量";
var reg = "/"+ch+"/g";
var str = "這是一個變量,這是一個變量";
var val = str.replace(eval(reg),"替換");
alert(val);
</script>

但是如果要替換的字符串中含有/符號時,上面的就不能用了,需要采取以下方法

<script>
var ch = "/";
var str = "這是一/個變量,這是一個變量";
var val = str .replace(new RegExp(ch,'g'),"b");
alert(val);
</script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM