語法:
string.replace(regexp,replacement)
參數:
regexp:聲明了要替換的模式的RegExp對象。如果該參數是一個字符串,則將它作為要檢索的直接量文本模式,而不是首先被轉換成RegExp對象。replacement:一個字符串,聲明的是替換文本或生成替換文本的函數。
返回值:
一個新字符串,是用replacemenc替換了與regexp的第一次匹配或所有匹配之后得到的。
描述:
字符串string的方法replace()執行的是查找並替換的操作。它將在string中查找與regexp相匹配的子串,然后用replacement替換這些子串。如果regexp具有全局性質g,那么replace()將替換所有的匹配子串。否則,它只替換第一個匹配子串。
示例:
直接替換字符串:"javascript".replace("a","A"); //返回jAvascript,只替換第一個a
根據正則表達式替換:"javascript".replace(/a/,"A");//返回jAvascript,也是只替換第一個a,但是如果給正則表達式加一個全局屬性g,則可以替換所有a ,如"javascript".replace(/a/g,"A"),返回jAvAscript,全部替換。
真題示例:
阿里巴巴2016校園招聘Web前端筆試題:如果一個字符串中有多處空格,且每處空格一個或多個,將每處的多個空格全部變成一個空格,如下所示:
將字符串 a空格空格b空格c空格空格空格空格def空格空格g(a b c def g)轉換成(a b c def g)。
代碼如下:
1 var removeSpace = function(str){ 2 return str.replace(/\s+/g," "); 3 } 4 var str = "a b c def g"; 5 console.log(removeSpace(str)); //輸出a b c def g
如果對正則表達式不清楚或有疑問,請參閱我的另一片博客http://www.cnblogs.com/yxz-turing/p/4785071.html