前端正則表達式書寫
一.寫法
寫法一
/正則表達式/修飾符
修飾符
- /i (忽略大小寫)
- /g (全文查找出現的所有匹配字符)
- /m (多行查找)
- /gi(全文查找、忽略大小寫)
- /ig(全文查找、忽略大小寫)
例子:/a/gi 查找內容中的a
不寫修飾符默認只匹配一個
寫法二
let a = new RegExp('/正則表達式/','修飾符')
二.常用幾個方法
1.match
方法可在字符串內檢索指定的值,或找到一個或多個正則表達式的匹配。
返回的內容
["匹配到的內容", index: 3, input: "字符串對象", groups: undefined]
如果regexp修飾符為/g則返回對象為一個數組
語法:
1.stringObject.match(str)
2.stringObject.match(regexp)
拿查找字符串abc 中的a舉例
'aabc' .match('a') 只匹配第一個
'aabc' .match(/a/) 只匹配第一個
2.replace
用于字符串中一些字符替換另一些字符,或替換一個與正則表達式相匹配的子串
語法:
1.stringObject.replace('查找的第一個字符串','修改后的字符串')
2.stringObject.replace(regexp(正則表達式匹配到的內容所有替換),'修改后的字符串')
3.search
他用法與match類似不過他返回的是索引
語法:
1.stringObject.match('searchvalue')
2.stringObject.match(regexp)
4.test
方法用于檢測一個字符串是否匹配某個模式,如果字符串中含有匹配的文本,則返回 true,否則返回 false。
語法:
regexp.test(stringObject)
如
/a/.test('a') #返回true/a/.test('ac') #返回true/a/.test('c') #返回false
5.exec
方法就是用來檢索字符串中正則表達式的匹配,如果匹配到了那么就返回一個存放有結果的數組,如果沒有匹配到就返回一個null
regexp.exec(stringObject)
其實和match類似,不過就是填寫的位置返一下
但是有一點
console.log('c'.exec('c')); #會報錯console.log('c'.match('c')); #會匹配c
我自己是一名從事了多年開發的web前端老程序員,目前辭職在做自己的web前端私人定制課程,今年年初我花了一個月整理了一份最適合2019年學習的web前端學習干貨,各種框架都有整理,送給每一位前端小伙伴,想要獲取的可以關注我的頭條號并在后臺私信我:前端,即可免費獲取。
作者:大前端世界
鏈接:https://www.jianshu.com/p/6f4a238daa9e