正則?=,?:,?!


'adsaaa'.replace(/a(?=d)/g,'c')   // "cdsaaa"  非獲取性匹配,只將后面有d的a替換成c
'adsaaa'.replace(/a(?:d)/g,'c')   // "csaaa"  此時等同於/ad/,將ad替換成c
'adsaaa'.replace(/a(?!d)/g,'c')   // "adsccc" 將后面不是d的a替換成c
'adsaaa'.match(/a(?=d)/g)   // ["a"]
'adsaaa'.match(/a(?:d)/g)   // ["ad"]
'adsaaa'.match(/a(?!d)/g)   // ["a", "a", "a"]

  其中?:的用處主要是在有|的時候,很好用,例如a(?:d|r)匹配的就是ad或者ar

(?<=pattern),?<!pattern)這兩個js里現在都用不了


免責聲明!

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



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