正則指引 斷言

2022-02-19 14:46:14 字數 882 閱讀 8832

正規表示式中的大多數結構匹配的文字會出現在匹配的結果中,但是有時候不但關心目標文字的匹配,

還要判斷目標文字左右兩側的文字是否符合要求,這種要求的正則裡叫做斷言。

常見的斷言有三類:單詞邊界、行的起始、結束的位置、環視。

單詞邊界:正則記著:\b,它匹配「單詞邊界」的位置。

使用情況:

\bword\b   \bword    word\b

aword                                success

awords

words                   success

word     success    success   success

\b是非單詞邊界。

行起始、結束位置在正規表示式中,這類匹配位置的元素叫做錨點,用來定位的,

常用的錨點還有^和$,,分別匹配字串的開始和結束的位置,如果匹配模式是多行的時候,

他們還可以匹配每一行的開始和結束位置。使用表示式:(?m)^...$

所以在多行模式時,匹配整段文字的開始和結束位置需要其他的方式,他們是\a和\z

環視:之前介紹邊界匹配,它是完成這樣的判斷,在某個位置向左向右看,必須出現和必須不出現某些字元,這種功能在正則裡面叫做環視。

正則使用:

(?!...)  是指當前位置之後,不容許出現能匹配的字元

(?(?=...)  是指當前位置之後,容許出現能匹配的字元

(?<=...) 是指當前位置之前,容許出現能匹配的字元

在正則中還可以選擇匹配模式,一般常見的匹配模式:不分大小寫模式、單行模式、多行模式、注釋模式

使用:不分大小寫模式(?i)

單行模式(?s)

多行模式(?m)

注釋模式(?x)

正則指引 量詞

量詞 指定字元組出現的次數 例如 d d d表示出現三個字元組,我們可以使用量詞表示法 d量詞可以表示字元組出現的次數,還可以表示字元組出現次數的範圍 d 就表示這邊可以匹配出現0到10次之間整數。一般量詞的表示 表示範圍 m x n 表示範圍 m x x可以無窮大 表示範圍 0 x n 還存在一組...

正則指引 括號

正則指引 括號 之前學習字元組和量詞,量詞是形容字元組的,但是有時候我們希望用量詞來形容多個元素,我們可以用括號完成,我們可以使用 把目標元素括起來,就可以把括號內部看成乙個整體,在括號外部使用量詞,量詞就會對括號內部的所有元素作用。用括號改變量詞的作用元素 re.research r ab ab ...

正則指引 字元組

字元組 在同乙個位子可能出現的各種字元。用正規表示式判斷數字字元 re.search 0123456789 charstr none 其中 0123456789 以字串形式給出正規表示式,他是乙個字元組,表示可以是0到9的任意乙個字元。net中regex.ismatch charstr,012345...