python學習,day5 正則

2022-08-29 06:27:08 字數 3614 閱讀 6160

#

coding=utf-8

#author: ryan bi

import

reres = re.match('

ryan

','ryan123abcdefg456

') #

匹配2個字串中相似的部分

print

(res)

print(res.group()) #

只顯示相同部分

res1 = re.match('

ryan\d

','ryan123abcdefg456

') #

顯示匹配後面的數字

print

(res1)

res2 = re.match('

ryan\d+

','ryan123abcdefg456

') #

顯示匹配後面的所有數字

print

(res2)

res3 = re.match('

^.','

ryan123abcdefg456

') #

^是開頭的意思(match都是從頭),[^]表示非的意思,.是除了\n外的任意乙個字元(這個就是取開頭的字元)

print

(res3)

res4 = re.search('

b.+e

','ryan123abcdefg456e

') #

search 去開頭b,結尾e的中間的字元

print

(res4)

res5 = re.search('

a[a-z]+g

','ryan123abcdefgabcdefg456e

') #

取a開頭,g結尾,中間為a-z的字串

print

(res5)

res6 = re.search('

a[a-za-z]+g

','ryan123abcdefgabcdefg456e

') #

取a開頭,g結尾,中間為a-z和a-z的字串

print

(res6)

res7 = re.search('

#.+#

','123#hello#

') #

兩個#之間

print

(res7)

res8 = re.search('

a?','

aabce

') #

帶?,匹配?前的字元0次或1次

print

(res8)

res9 = re.search('

aal?

','aabceaaa

') #

帶?,匹配?前的字元0次或1次(l為0次,就是匹配aa)

print

(res9)

res10 = re.search('

[0-9]

','aab1c2e3456a5aa

') #

匹配0-9,連續3個

print

(res10)

res11 = re.findall('

[0-9]

','aab1c2e345a5aa

') #

匹配0-9,連續1~3個,全部都匹配到

print

(res11)

res11 = re.search('

abc|abc

','abcddabc

') #

|或的意思

print

(res11)

res12 = re.findall('

abc|abc

','abcddabc

') #

|或的意思findall

print

(res12)

res13 = re.search('

abcd\|

','abcd|dabc

') #

匹配管道符|

print

(res13)

res14 = re.search('

\a[0-9]+[a-z]\z

','123a

') #

\a開頭,\z結尾,等同$

print

(res14)

res15 = re.search('

\d+','

123a、

') #

\d 非數字 \w匹配非字母數字,\w匹配字母數字,\匹配空白字元

print

(res15)

res16 = re.search('

(?p[0-9]+)

','abde1234afd@13

').groupdict() #

\d 非數字 \w匹配非字母數字,\w匹配字母數字,\匹配空白字元

print

(res16)

res17 = re.search('

(?p[0-9]+)(?p[a-z]+)

','abde1234afd@13

').groupdict() #

直接匹配成字典

print

(res17)

print(res17['id'

])res18 = re.search('

(?p[0-9])(?p[0-9])(?p[0-9])

','130603197911010318

').groupdict()

#取身份證號碼

print

(res18)

res19 = re.split('

[0-9]+

','abd124dedg8dsf

') #

以數字做間隔,形成列表

print

(res19)

res20 = re.sub('

[0-9]+

','|

','abd124dedg8dsf

') #

把數字替換為|

print

(res20)

res21 = re.search('

[a-z]+

','abdedfge8dsf

',flags=re.i) #

flags=re.i,忽略大小寫

print

(res21)

res22 = re.search('

[a-z]+f$

','abd\nedfg\ne8dsf

',flags=re.m) #

flags=re.m,即便有換行,也能匹配

print

(res22)

res23 = re.search('

.+f$

','abd\nedfg\ne8dsf

',flags=re.s) #

理論上flags=re.s是匹配除了換行符\n之外的,但是windows不行

print

(res23)

res24 = re.search(r'

\d+\.?\d*(\*-?\d+\.?\d*)+

', 2*2)

print(res24)

python學習日誌 day5

json和pickle模組主要用於序列化,有四個方法 dump dumps loads load 1.模組定義 用來從邏輯上組織python 本質上就是以.py結尾的python檔案 檔名test.py對應模組名 test 2.模組匯入方法 import module name import mod...

Python學習day5作業

從鍵盤上輸 入 個數,顯示它的絕對值 允許使 用abs num float input 請輸入乙個數字 print num if num 0else num 假設使用者名為admin,密碼為123abc,從控制台分別輸入使用者名稱和密碼,如果和已知使用者名稱和密碼都匹配上的話,則驗證成功,否則驗證失...

python學習筆記 day5

函式 返回值 描述 pow x,y x y 運算後的結果 sqrt x 返回 x 的平方根 abs x 返回數字的絕對值,如 abs 10 返回 10 fabs x 返回數字的絕對值,如 math.fabs 10 返回 10.0 ceil x 返回數字的上入整數,入 math.ceil 4.1 返回...