python中常用函式

2021-09-25 08:06:29 字數 2360 閱讀 7462

「不同

p = re.compile(」["+a+"]")

for i in a:

if p.match(i):

print 「[%s] is match」 %i

else:

print 「[%s] is not match」 %i

在中包含本身,表示"[「或者」]"匹配.用[和]表示.

出現在的開頭,表示取反.[abc]表示除了a,b,c之外的所有字元。^沒有出現在開頭,即於身身匹配。

-可表示範圍.[a-za-z]匹配任何乙個英文本母。[0-9]匹配任何數字。

在中的妙用。

d [0-9]

d [^0-9]

s s [^

]w [a-za-z0-9_]

w [^a-za-z0-9_]

表示和tab匹配, 其他的都和字串的表示法一致

表示和十六進製制ascii 0x20匹配

有了,可以在中表示任何字元。注:單獨的乙個".「如果沒有出現中,表示出了換行 以外的匹配任何字元,類似[^ ].

regexp的重複

表示出現m個以上(含m個),n個以下(含n個). 如abc和abc,abbc,abbbc匹配,不會與ac,abbbc匹配。

m是下界,n是上界。m省略表下界是0,n省略,表上界無限大。

表示 +表示 ?表示

最大匹配和最小匹配 python都是最大匹配,如果要最小匹配,在,+,?,後面加乙個?.

match object的end可以得到匹配的最後乙個字元的位置。

re.compile(「a*」).match(『aaaa』).end() 4 最大匹配

re.compile(「a*?」).match(『aaaa』).end() 0 最小匹配

使用原始字串

字串表示方法中用\表示字元.大量使用影響可讀性。

解決方法:在字串前面加乙個r表示raw格式。

a = r"a」 print a 結果是a

a = r"「a」 print a 結果是"a

使用re模組

先用re.compile得到乙個regexobject 表示乙個regexp

後用pattern的match,search的方法,得到matchobject

再用match object得到匹配的位置,匹配的字串等資訊

regxobject常用函式:

>>> re.compile(「a」).match(「abab」) 如果abab的開頭和re.compile(「a」)匹配,得到matchobject

<_sre.sre_match object at 0x81d43c8>

>>> print re.compile(「a」).match(「bbab」)

none 注:從str的開頭開始匹配

>>> re.compile(「a」).search(「abab」) 在abab中搜尋第乙個和re_obj匹配的部分

<_sre.sre_match object at 0x81d43c8>

>>> print re.compile(「a」).search(「bbab」)

<_sre.sre_match object at 0x8184e18> 和match()不同,不必從開頭匹配

re_obj.findall(str) 返回str中搜尋所有和re_obj匹配的部分.

返回乙個tuple,其中元素是匹配的字串.

matchobject的常用函式

m.start() 返回起始位置,m.end()返回結束位置(不包含該位置的字元).

m.span() 返回乙個tuple表示(m.start(), m.end())

m.pos(), m.endpos(), m.re(), m.string()

m.re().search(m.string(), m.pos(), m.endpos()) 會得到m本身

m.finditer()可以返回乙個iterator,用來遍歷所有找到的matchobject.

for m in re.compile("[ab]").finditer(「tatbxaxb」):

print m.span()

高階regexp

| 表示聯合多個regexp. a b兩個regexp,a|b表示和a匹配或者跟b匹配.

^ 表示只匹配一行的開始行首,^只有在開頭才有此特殊意義。

$ 表示只匹配一行的結尾

a 表示只匹配第一行字串的開頭 ^匹配每一行的行首

z 表示只匹配行一行字串的結尾 katex parse error: expected 'eof', got '#' at position 122: …match("info ") #̲使用raw格式 表示單詞邊界 …(參見上例)

verbose, x verbose模式↩︎

Python中常用函式

python中常用函式 1 range 函式 函式定義 返回值 返回乙個遞增或遞減的數字列表,列表的元素值由三個引數決定 start表示列表開始的值,預設為 0 stop 表示列表結束的值,該引數不可缺少 引數step表示步長,預設值為 1 range 返回的是乙個遞增或遞減的數字列表。例1 ran...

python中常用內建函式

1.eval 執行乙個字串表示式的值,並返回表示式的值。2.map function,iterable 會根據提供的函式對指定序列做對映。第乙個引數function以引數序列中每乙個元素呼叫function函式,返回包含每次function函式返回值的新列表 map lambda x x 2,1,2...

python中常用的內建函式

近來在自學python語言,為了日後能快速複習,特持續做下總結 1.issubclass subclass1,superclass1 如果subclass1是superclass1的子類,issubclass返回true,否則返回false 2.isinstance instance name,cl...