有關正則表達式的Js方法(replace)


整理一下最近常用的幾個有關正則的js方法

replace

語法:stringObject.replace(regexp/substr,replacement)

用法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*/

 


免責聲明!

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



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