用法1 const str='abc1314520def'; str.replace(/\D/g,'');/*\D非數字,g全局匹配,每一個地方都匹配一次*/ 結果: '1314520' 用法2: str.replace('abc','');/*直接用字符串匹配*/ 結果: '1314520def' 用法3: str.replace(/\D/g,function(rs){return rs.toUpperCase()}) 結果: 'ABC1314520DEF'
/*第二個參數可傳入函數,會對每一個匹配到的字符串'rs'作一次處理,而後你能夠將結果return 出來*/ 進階用法:將網址查詢的search部分轉化爲鍵值對(就是url問號後面的東西) function parseURL(url=window.location.href){/*es6語法直接設置默認值*/ const search = url.substr(url.indexOf('?')+1); const obj={}; search.replace(/([^&=]+)=([^&=]*)/g,function(rs,$1,$2){ obj[decodeURIComponent($1)]=decodeURIComponent($2) }) return obj } $1——$99就是匹配第1到第99個子表達式的文本,表達式1:'([^&=]+)',表達式2:'([^&=]*)'等等*/
/*這裏咱們沒有用到rs 只是爲了佔位而已,由於第一個參數默認爲rs*/