python3 day4 re正規表示式,冒泡

2022-09-18 20:09:15 字數 1966 閱讀 1282

一、正規表示式常用

1.re.match:只嘗試從字串的查詢,後面不作查詢。

例子:

import re

text="aabcdefg123123"

m=re.match('a',text)

if m:

print(m.group())

else:

print("not match")

#結論只能匹配開頭a,其它均無法匹配。

2.re.search:在字串內查詢,只要找到第乙個匹配就返回,後面不作查詢。

import re

text="aabcdefg123123"

m=re.search('123',text)

if m:

print(m.group())

else:

print("not match")

#結論只能匹配123,第二個123不作查詢。

3.re.match和re.search區別

re.match只匹配字串的開始,如果字串開始不符合正規表示式,則匹配失敗,函式返回none;而re.search匹配整個字串,直到找到乙個匹配,找到乙個匹配,就返回後面不作查詢。

4.re.findall:找到所有要匹配的字元並返回列**式

import re

text="aabcdefg123123"

m=re.search('123',text)

if m:

print(m)

else:

print("not match")

結果:[123,123]

5.re.split:將匹配到的格式當做分割點對字串分割成列表

import re

text="tom1cat2dog"

m=re.search('[0-9]',text)

if m:

print(m)

else:

print("not match")

結果:['tom','cat','dog']

6.re.sub:替換匹配到的字元

import re

text="tom1cat2dog"

m=re.search('[0-9]','#',text)

if m:

print(m)

else:

print("not match")

結果:tom#cat#dog

7.re.complie:

可以把正規表示式編譯成乙個正規表示式物件。可以把那些經常使用的正規表示式編譯成正規表示式物件,這樣可以提高一定的效率。下面是乙個正規表示式物件的乙個例子:

import re

text="tom1cat2dog"

regex=re.compile('[0-9]')

m=regex.findall(text)

if m:

print(m)

else:

print("not match")

結果:['1','2']

8.冒泡演算法

#!/usr/bin/env python3

data=[10,4,33,21,54,3,8,11,5,22,2,1,17,13,6]

counter=0

for j in range(1,len(data)):

for i in range(len(data)-1): #j,為優化程式,1.解決out of range,2.解決沒有必要迴圈

if data[i] > data[i+1]:

data[i],data[i+1]=data[i+1],data[i]

counter +=1

counter +=1

print(data)

print("count:",counter)

python正則re使用

1 import re 將正規表示式編譯成pattern物件 pattern re.compile r hello re.i 使用pattern匹配文字,獲得匹配結果,無法匹配時將返回none match pattern.match hello world if match 使用match獲得分組資...

python基礎 Re正則

正規表示式 regular expression,簡稱re 正規表示式是對字串操作的 種邏輯公式,就是 事先定義好的 些特定字元 及這些特定字元的組合,組成 個 規則字串 這個 規則字串 來表達對字串的 種過濾邏輯。字串的匹配查詢 re模組中的findall函式可以對指定的字串進行遍歷匹配,獲取字串...

python 正則re模組

1.正則各種字元表示的含義 預設匹配除 n之外的任意乙個字元,若指定flag dotall,則匹配任意字元,包括換行 匹配字元開頭 匹配 號前的字元0次或多次,re.findall ab cabb3abcbbac 結果為 abb ab a 匹配前乙個字元1次或多次,re.findall ab ab ...