javascript實作正規替換的兩種方法:1、使用replace()函數,可在字串中取代一個與正規表示式相符的子字串,語法「字串物件.replace(/[\ r\n]/g,'替換值')」;2、使用replaceAll()函數,可在字串中取代所有與正規表示式相符的子字串,語法「字串物件.replaceAll(/[\r \n]/g,'替換值')」。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
javascript中提供兩個函數來實作正規替換:
replace()函數
replaceAll()函數
1、使用replace()函數實作正規取代
replace() 方法用於在字串中用有些字符會取代另一些字符,或取代一個與正規表示式相符的子字串。
string.replace(searchvalue,newvalue)
參數 | 描述 |
---|---|
searchvalue | 必須。規定子字串或要替換的模式的 RegExp 物件。 請注意,如果該值是一個字串,則將它作為要檢索的直接量文字模式,而不是先轉換為 RegExp 物件。 |
newvalue | 必要。一個字串值。規定了替換文字或產生替換文字的函數。 |
傳回值:一個新的字串,是用 replacement 取代了 regexp 的第一次符合或所有符合之後得到的。
範例1:利用正規則將所有小寫"blue" 都替換為"red"
var str="Mr Blue has a blue house and a blue car"; console.log(str); var n=str.replace(/blue/g,"red"); console.log(n);
範例2 :利用正規將所有換行符替換為空字元(即去除換行符)
let a = '\n换行个阿斯蒂芬\r换行个阿斯蒂芬ABCD'; console.log(a); let b = a.replace(/[\r\n]/g,''); console.log(b);
2、使用replaceAll()函數實現正規替換
replaceAll() 用於在字串中用一些字符替換另一些字符,或替換一個與正則表達式匹配的子串,該函數會替換所有匹配到的子字串。
str.replaceAll(regexp|substr, newSubstr|function)
參數 | 描述 |
---|---|
#regexp|substr | 必須。規定子字串或要替換的模式的 RegExp 物件。 請注意,如果該值是一個字串,則將它作為要檢索的直接量文字模式,而不是先轉換為 RegExp 物件。當使用一個 regex 時,您必須設定全域("g")標誌, 否則,它將引發 TypeError:"必須使用全域 RegExp 呼叫 replaceAll"。 |
newSubstr|function | #必要。一個字串值。規定了替換文字或產生替換文字的函數。 |
傳回值:一個新的字串,是用 newSubstr 取代了 regexp 的所有符合之後得到的。
範例:利用正規則將所有"blue" 替換為"red"
var str="Mr Blue has a blue house and a blue car"; console.log(str); var n=str.replaceAll(/blue/ig,"red"); console.log(n);
【相關推薦:web前端開發】
以上是javascript怎麼實作正規替換的詳細內容。更多資訊請關注PHP中文網其他相關文章!