元字符

1 元字符 []

1.1匹配若干字符之一

如果我們要匹配單詞‘grey’,同時(shí)又不確定它是否被寫作為‘gray’,就可以使用正則表達(dá)式結(jié)構(gòu)體[...]:
gr[ea]y
它的意思是匹配g 然后r 然后 是 e或者 a 最后是 y。
在一個字符組中可以列舉任意多的字符,例如:[123456],匹配1-6中的日益一個數(shù)字。
在字符組內(nèi)部。字符組元字符 - 表示一個范圍 [123456]與[1-6]是一個意思
只有在字符組內(nèi)部 - 才表示范圍,但即使是在字符組內(nèi)它也不一定表示范圍,如果它出現(xiàn)在字符組的開頭,它只是一個普通字符。同樣?和.在字符組中也只是普通字符 [0-9A-Z_!.?] 中只有兩 - 是元字符

1.2排除型字符組

用[^...]取代[...],這個字符組就會匹配任何未列出的字符,如:
[^1-6]匹配除了1到6以外的任何字符。
在這個字符中^表示 排除,這里列出的是不希望匹配的字符

1.3用點(diǎn)號匹配任意字符

元字符 . 是用來匹配任意字符的字符組的簡便寫法
如果我們要檢索01/02/03或者 01-02-03或者01.02.03
我們可以使用 01[-./]02[-./]03 也可以使用 03.02.03

2元字符 |

| 元字符是或的意思,依靠它我們能把不同的子表達(dá)式組合成一個總的表達(dá)式,而這個表達(dá)式又能夠匹配任意的子表達(dá)式。如:
Bob 和 Rob 是兩個表達(dá)式,但 Bob | Rob 就是能夠同時(shí)匹配其中任意一個的正則表達(dá)式。再這樣的組合中子表達(dá)式成為“多選分支”。
上面的 gr[ea]y 可以寫成 grey|gray 或者 gr(a|e)y。
對表達(dá)式gr(a|e)y來說,括號是必須的如果沒有括號 意思就變?yōu)?gra或者ey了。

3單詞分界符

使用正則的時(shí)候有時(shí)我們會想要匹配一個 單詞,例如 我們要匹配 cat,
二忽略cats。這是就需要單詞分界符了,<和>,分解可以匹配單詞的開始和結(jié)束 。<cat>就會拿只匹配 cat 這個單詞。

4可選項(xiàng)元素

現(xiàn)在我們來匹配color或者colour。我們可以用元字符 color|colour,但這樣寫比較麻煩,使用元字符?更簡單 colou?r,?代表可選項(xiàng)。把他放在一個字符的后面,就表示此處容許出現(xiàn)這個字符,不過它的出現(xiàn)并不是匹配成功的必要條件。

5其他量詞 重復(fù)出現(xiàn)

+和*的作用于?類似。
+表示之前緊鄰的元素出現(xiàn)一次或多次,
表示之前緊鄰的元素出現(xiàn)多次或不出現(xiàn),
...?于...
永遠(yuǎn)不會匹配失敗,區(qū)別只是在于他們匹配的結(jié)果。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容