正則 字元組筆記

2021-08-07 19:09:49 字數 1065 閱讀 3386

字元組中的字元排列順序不影響字元組的功能,出現重複字元也不會影響

[0123456789]== [9876543210] == [102299345678]

這樣寫比較複雜,正規表示式提供-範圍表示法簡化字元組

[0123456789] => [0-9]

question:-範圍表示法為啥要寫作[0-9]而不是[9-0]??

在字元組中,』-』 表示的範圍一般是根據字元對應的碼值來確定的,碼值小的在前,大的在後。寫作[9-0]就會出錯

[0-9a-za-z]:匹配數字、小寫字母、大寫字母。

在程式中遇到特殊字元需要加』\』來轉義,python中提供了原生字串,正規表示式如何,原生字串就是如何,不需要考慮正規表示式之外的轉義形式如:r"string"

排除型字元組(negated character class)

排除型字元組非常類似普通字元組,只是在方括號」[「之後緊跟乙個「^」字元寫作[^…] ,表示在當前位置,匹配乙個沒有列出的字元

如[^0-9]:表示匹配0-9之外的字元

tips:排除型字元組必須要匹配乙個字元

字元組簡記法

\d == [0-9]

# d代表數字digit

\d == [^0-9]

\w == [0-9a-za-z]

#w代表單詞字元word

\w == [^0-9a-za-z]

\s == [

\t\r

\n\v\f]

#s表示空白字元space

\s == [^ \t

\r\n

\v\f

]

正規表示式有許多流派:

1. perl衍生出來流派pcre(per compatible regular expression) 本文案例

2. posix(portable operating system inte***ce for unix)

正則 排除字元組

在正規表示式模式中,你也可以反 讀組的作用,你可以尋找組中沒有的任意字元,而不是去尋找組中含有的字元。要這麼做的話,只要在字元組的開頭加個脫字元 例如,data6的內容如下 this is a test line this is a different line.this is a test of ...

正則指引 字元組

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

正則表達選擇字元組(六)(1000則)

字元組呈正則一脈中的乾坤脈,也就是基本上字元組占正則六分之一,現在簡稱方括號分組。這個很常見,比如我們 0 9 就像這種,看起來平平無奇,實則暗藏玄機。好吧,最近過於清貧,已經開始研究陰陽八卦了 我們常見的這種內的東西就叫字元組了,比如我寫乙個 ab 那麼匹配的就是a或者b了。字元組取反 0 9 我...