這篇文章主要講解了“使用正則表達(dá)式替換字符串的replace方法是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“使用正則表達(dá)式替換字符串的replace方法是什么”吧!
創(chuàng)新互聯(lián)主要從事網(wǎng)頁設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、響應(yīng)式網(wǎng)站、程序開發(fā)、網(wǎng)站優(yōu)化、微網(wǎng)站、小程序制作等,憑借多年來在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了豐富的做網(wǎng)站、成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營銷經(jīng)驗(yàn),集策劃、開發(fā)、設(shè)計(jì)、營銷、管理等多方位專業(yè)化運(yùn)作于一體。正則表達(dá)式(regular expression)描述了一種字符串匹配的模式(pattern),可以用來檢查一個(gè)串是否含有某種子串、將匹配的子串替換或者從某個(gè)串中取出符合某個(gè)條件的子串等。
語法
str.replace(regexp|substr, newSubStr|function)
參數(shù)
regexp(pattern)
一個(gè)RegExp對(duì)象或者其字面量。該正則所匹配的內(nèi)容會(huì)被第二個(gè)參數(shù)的返回值替換掉。
substr(pattern)
一個(gè)要被 newSubStr 替換的{{jsxref("String","字符串")}}。其被視為一整個(gè)字符串,而不是一個(gè)正則表達(dá)式。僅僅是第一個(gè)匹配會(huì)被替換。
newSubStr (replacement)
用于替換掉第一個(gè)參數(shù)在原字符串中的匹配部分的 {{jsxref("String", "字符串")}}
function (replacement)
一個(gè)用來創(chuàng)建新子字符串的函數(shù),該函數(shù)的返回值將替換掉第一個(gè)參數(shù)匹配到的結(jié)果。
返回值
一個(gè)部分或全部匹配由替代模式所取代的新的字符串。
描述
上面語法的含義是說:一共兩個(gè)參數(shù),但是兩個(gè)參數(shù)可以分別傳輸不同的類型的值。
可能你看上面BB半天了也沒看明白,沒關(guān)系,我們直接來上代碼:
用法
1. 基本用法
var x = "abcda"; //兩個(gè)參數(shù)都是字符串 var y = x.replace('a','x');//'xbcda'
1. 進(jìn)階用法
var x = "abcda"; //前面參數(shù)使用正則,后面使用字符串 var y = x.replace(/a/g,'x');//'xbcdx'
1. 復(fù)雜用法
var x = 'abcda'; //前面參數(shù)使用正則,后面使用字符串 var y = x.replace(/a/g,function(match){ return match.toUpperCase(); });//'AbcdA'
應(yīng)用場(chǎng)景
這里只講復(fù)雜用法中的應(yīng)用場(chǎng)景實(shí)際使用,比如有個(gè)需求:你需要html文件中的標(biāo)簽之間的所有標(biāo)簽中的字符a替換為字符b。當(dāng)然如果是正則大神的話就可以跳過這里了,主要以下方式比較容易理解,更適合正則新手。
解決方法:
var allData = ""+'\r\n'+ "aaa"+'\r\n'+ "aaa
"+'\r\n'+ ""; allData = allData.replace(/\([\s\S]*?)\<\/body\>/g, function(match) { return match.replace(/\(.*?)\<\/p\>/g, function(match2) { return match2.replace(/a/g, "b") }) });
PS:在進(jìn)行全局的搜索替換時(shí),正則表達(dá)式需包含 g 標(biāo)志。
感謝各位的閱讀,以上就是“使用正則表達(dá)式替換字符串的replace方法是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)使用正則表達(dá)式替換字符串的replace方法是什么這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!