Python瓦匠 正規表示式 四

2022-07-27 04:30:15 字數 1672 閱讀 6682

一 字元分類

縮寫字元分類:

\d    0-9的任何數字

\d     除0-9的數字以外的任何字元

\w     任何字母數字或下劃線字元(可以認為是匹配「單詞」字元)

\w    除字母,數字和下劃線以外的任何字元

\s      空格,製表符或換行符(可以認為是匹配「空白」字元)

\s     除空格,製表符和換行符以外的任何字元

[0 - 5] 表示匹配數字0到5。(定義自己的字元分類)

二 建立自己的字元分類

[ ] 可以用來建立自己的字符集,在[ ]裡面的普通的正規表示式符號不會被解釋。所以不需要加倒斜槓。

例如:[a-za-z0-9]表示匹配所有小寫字母,大寫字母,0-9的數字。

[ ] 通過在字元分類的左方括號後加上乙個插入字元(^),就可以的到非字元類。非字元類將匹配不在這個字元類中所有字元。

例如:

>>> import

re>>> schoolregex = re.compile(r'

[^abcd]')

>>> schoolregex.findall('

asdfasdgc')

['s', '

f', '

s', '

g']

匹配所有非abcd的字母。

三 插入字元和美元字元

可以在正規表示式的開始處使用插入符號(^),表明匹配必須發生在被查詢文字的開始。

可以在正規表示式的末尾加上美元符號($),字串必須以這個正規表示式的模式結束。^和$可以同時使用,表示整個字串必須匹配該模式。

例如:

>>> begain = re.compile(r'

hello

')#匹配以hello開頭的字元

>>> begain.search('

hello world')

<_sre.sre_match object; span=(0, 5), match='

hello

'>

>>> print(begain.search('

hello world'))

none

例如:

>>> end = re.compile(r'

world$')

>>> end.search('

hello world')

<_sre.sre_match object; span=(6, 11), match='

world

'>

>>> end.search('

hello world

') ==none

true

正規表示式r'^\d+$' 表示匹配從開始到結束都是數字的字串。

例如:

import

rewhole = re.compile(r'

^\d+$

')#匹配以都是數字的字串。

>>> whole.search('

1234135345')

<_sre.sre_match object; span=(0, 10), match='

1234135345

'>

>>> whole.search('

13hi128314

') ==none

true

Python瓦匠 正規表示式(六)

一 不區分大小寫的匹配 通常,正規表示式不區分大小寫。要讓正規表示式區分大小寫,可以向re.comppile 傳入re.ignorecase或re.i作為第二個引數。例如 import re case re.compile r jack re.i 忽視大小寫。mo case.search jack ...

python正規表示式( )(四)

起始位置 和單行,多行模式 表示匹配文字的起始位置。正規表示式可以設定單行模式和多行模式 如果是單行模式,表示匹配整個文字的開頭位置 如果是多行模式,表示匹配文字每行的開頭位置 比如,下面的文字中,每行最前面的數字表示水果的編號,最後的數字表示 001 蘋果 60,002 橙子 70,003 香蕉 ...

正規表示式四

oracle正規表示式 regularexpression 在oracle裡正規表示式有四個函式可用,分別是regexp like regexp substr regexp instr 和regexp replace。這裡在我們oracle 10g裡靈活應用。先來簡單介紹一下正規表示式的內容,正規表...