前端正則表達(dá)式書(shū)寫(xiě)及常用的方法
正則表達(dá)式(regular expression)描述了一種字符串匹配的模式(pattern),可以用來(lái)檢查一個(gè)串是否含有某種子串、將匹配的子串替換或者從某個(gè)串中取出符合某個(gè)條件的子串等。
前端正則表達(dá)式書(shū)寫(xiě)
一.寫(xiě)法
寫(xiě)法一
/正則表達(dá)式/修飾符
修飾符
- /i (忽略大小寫(xiě))
- /g (全文查找出現(xiàn)的所有匹配字符)
- /m (多行查找)
- /gi(全文查找、忽略大小寫(xiě))
- /ig(全文查找、忽略大小寫(xiě))
例子:/a/gi 查找內(nèi)容中的a
不寫(xiě)修飾符默認(rèn)只匹配一個(gè)
寫(xiě)法二
let a = new RegExp('/正則表達(dá)式/','修飾符')
二.常用幾個(gè)方法
1.match
方法可在字符串內(nèi)檢索指定的值,或找到一個(gè)或多個(gè)正則表達(dá)式的匹配。
返回的內(nèi)容
["匹配到的內(nèi)容", index: 3, input: "字符串對(duì)象", groups: undefined]
如果regexp修飾符為/g則返回對(duì)象為一個(gè)數(shù)組
語(yǔ)法:
1.stringObject.match(str)
2.stringObject.match(regexp)
拿查找字符串a(chǎn)bc 中的a舉例
'aabc' .match('a') 只匹配第一個(gè) 'aabc' .match(/a/) 只匹配第一個(gè)
2.replace
用于字符串中一些字符替換另一些字符,或替換一個(gè)與正則表達(dá)式相匹配的子串
語(yǔ)法:
1.stringObject.replace('查找的第一個(gè)字符串','修改后的字符串')
2.stringObject.replace(regexp(正則表達(dá)式匹配到的內(nèi)容所有替換),'修改后的字符串')
3.search
他用法與match類似不過(guò)他返回的是索引
語(yǔ)法:
1.stringObject.match('searchvalue')
2.stringObject.match(regexp)
4.test
方法用于檢測(cè)一個(gè)字符串是否匹配某個(gè)模式,如果字符串中含有匹配的文本,則返回 true,否則返回 false。
語(yǔ)法:
regexp.test(stringObject)
如
/a/.test('a') #返回true /a/.test('ac') #返回true /a/.test('c') #返回false
5.exec
方法就是用來(lái)檢索字符串中正則表達(dá)式的匹配,如果匹配到了那么就返回一個(gè)存放有結(jié)果的數(shù)組,如果沒(méi)有匹配到就返回一個(gè)null
regexp.exec(stringObject)
其實(shí)和match類似,不過(guò)就是填寫(xiě)的位置返一下
但是有一點(diǎn)
console.log('c'.exec('c')); #會(huì)報(bào)錯(cuò) console.log('c'.match('c')); #會(huì)匹配c
總結(jié)
以上所述是小編給大家介紹的前端正則表達(dá)式書(shū)寫(xiě)及常用的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- 正則表達(dá)式性能優(yōu)化方法(高效正則表達(dá)式書(shū)寫(xiě))
- Python 正則表達(dá)式匹配字符串中的http鏈接方法
- python正則表達(dá)式去除兩個(gè)特殊字符間的內(nèi)容方法
- Python實(shí)現(xiàn)正則表達(dá)式匹配任意的郵箱方法
- Java使用正則表達(dá)式驗(yàn)證手機(jī)號(hào)和電話號(hào)碼的方法
- js正則表達(dá)式校驗(yàn)指定字符串的方法
- JS使用正則表達(dá)式獲取小括號(hào)、中括號(hào)及花括號(hào)內(nèi)容的方法示例
- Android 2018最新手機(jī)號(hào)驗(yàn)證正則表達(dá)式方法
相關(guān)文章
JavaScript正則表達(dá)式上之基本語(yǔ)法(推薦)
一個(gè)正則表達(dá)式就是由普通字符(例如字符 a 到 z)以及特殊字符(稱為元字符)組成的文字模式。這篇文章主要介紹了JavaScript正則表達(dá)式上之基本語(yǔ)法(推薦)的相關(guān)資料,需要的朋友可以參考下2016-05-05js replace正則相關(guān)的詭異問(wèn)題
最近做會(huì)員個(gè)人身份頁(yè)的時(shí)候遇上如下問(wèn)題2009-10-10VSCode正則表達(dá)式匹配多行實(shí)戰(zhàn)案例
正則表達(dá)式是一種強(qiáng)大的文本模式匹配工具,可以用來(lái)搜索和修改文本,下面這篇文章主要給大家介紹了關(guān)于VSCode正則表達(dá)式匹配多行實(shí)戰(zhàn)案例的相關(guān)資料,需要的朋友可以參考下2024-03-03dw(dreamweaver)正則表達(dá)式函數(shù)列表
dw(dreamweaver)正則表達(dá)式函數(shù)列表,需要的朋友可以參考下。2007-12-12正則表達(dá)式常見(jiàn)的4種匹配模式小結(jié)
今天一起來(lái)學(xué)習(xí)下正則中的匹配模式,所謂的匹配模式,就是指正則中的一些 改變?cè)址ヅ湫袨?的方式,比如匹配時(shí)不區(qū)分英文字母的大小寫(xiě),具有一定的參考價(jià)值,感興趣的可以了解一下2021-07-07淺談js正則字面量//與new RegExp的執(zhí)行效率
以前看到很多文章都說(shuō) 字面量 會(huì)比 new 對(duì)象 形式效率高,但是在正則這里,好像不是這么回事,具體的請(qǐng)看下面的分析2020-04-04只能是字母或數(shù)字或者是字母和數(shù)字的組合的正則previousSibling
只能是字母或數(shù)字或者是字母和數(shù)字的組合的正則previousSibling...2007-03-03