元字符
^ $ . * + ? = ! : | / ( ) [ ] { }
在使用這些符號(hào)時(shí)需要用“”來(lái)進(jìn)行轉(zhuǎn)移。
如果記不清楚那些標(biāo)點(diǎn)符號(hào)需要轉(zhuǎn)移,可以在使用標(biāo)點(diǎn)符號(hào)時(shí)都使用反斜杠“”
簡(jiǎn)單匹配
1、直接量 /javascript/ 匹配帶有“javascript”的字符串 比如“javascript is an object-oriented scripting language”
2、[ ] /[abc]/ 匹配字符“a”或“b”或“c”
3、[^] /[^abc]/ 匹配除了a、b、c之外的任意字符
4、. /./ 任意字符
5、w /w/ 任意ASCII單字符,等價(jià)于[a-zA-Z0-9]
6、s /s/ 空白符
7、d /d/ 數(shù)字,等價(jià)于[0-9]
重復(fù)
1、{n,m} /[a]{3,5}/ 重復(fù)次數(shù)至少n次最多m次,比如“aaa”或“aaaa”或“aaaaa”
2、{n,} /[a]{3,}/ 重復(fù)次數(shù)至少n次,比如“aaa”或“aaaaa”或“aaaaaa”……
3、{n} /[a]/{3} 剛好匹配n次,比如只能匹配“aaa”
4、? /[a]?/ 0次或1次
5、+ /[a]+/ 1次或多次
6、* /[a]*/ 0次或多次
選擇、分組
1、| /a|b/ 選擇,匹配“a”或“b”
2、() /(abc)+/ 分組,匹配“abc”或“abcabc”……
位置
1、^ /^a/ 以“a”開(kāi)始,比如“ab”或“abc”……
2、$ /b$/ 以“b”結(jié)束,比如“ab”或“cb”……
標(biāo)志
1、i /a/i 不區(qū)分大小寫(xiě),比如“a”或“A”
2、g /b/g 全局匹配、找到所有的匹配
方法
1、 var ret = “javascript”.search(/script/i) 返回第一次匹配子串開(kāi)始字符的位置,沒(méi)有匹配返回-1
2、 var ret = “javascript”.replace(/java/gi,””) 講匹配的子串替換成函數(shù)的第二個(gè)參數(shù);
3、 var ret = “javascript”.match(/(java)(script)/gi) 返回一個(gè)數(shù)組
ret[0] 完整的匹配“javascript”
ret[1] 第一個(gè)括號(hào)匹配的子串“java”
ret[2] 第二個(gè)括號(hào)匹配的子串“script”
……
4、 var ret = “javascript”.split(/a/) 用參數(shù)匹配的子串作為分隔符分解字符串 返回?cái)?shù)組
javascript之正則表達(dá)式基礎(chǔ)知識(shí)小結(jié)
標(biāo)簽:javajavaScript
相關(guān)推薦
- 個(gè)人站長(zhǎng)消亡論?從“消失”到“重生”的三大破局路徑
- 云原生和非云原生哪個(gè)好?六大區(qū)別詳細(xì)對(duì)比
- 韓國(guó)服務(wù)器的性能如何提升
- 國(guó)外VPS免費(fèi)加速怎么操作 國(guó)外VPS云服務(wù)器加速方法
- 2023 年 11 月頭號(hào)惡意軟件:新型 AsyncRAT 攻擊活動(dòng)爆發(fā)
- 高防加速CDN對(duì)網(wǎng)絡(luò)安全的優(yōu)勢(shì)
- 網(wǎng)站被惡意CC攻擊如何有效的處理
- 青云QingCloud:KubeSphere第四季度擴(kuò)展組件開(kāi)發(fā)計(jì)劃