python 正規表示式

2022-07-22 04:24:12 字數 2092 閱讀 1698

importre​

#以指定內容開頭

#c = re.compile(r'^abc')

#以指定內容結尾

#c = re.compile(r'abc$')

#同時限制開頭和結尾

c = re.compile(r'

^abc$')

​s = c.search('

abc')​

ifs:

print('ok'

)

print(s.group())

分組匹配

importre​

#| 表示或,具有最低的優先順序

#() 用於表示乙個整體,可以確定優先順序

c = re.compile(r'

a(hello|world)d')

​s = c.search('

aworldd')

​ifs:

print('ok'

)

print(s.group())

()還有分組匹配的作用,下次再講。

import

rec=re.compile(r'

\\d'

)s=c.search('

\d1sfcef\d')

ifs:

print('ok'

)

print(s.group())

驗證乙個字串是否是正確的郵箱格式

import

rec=re.compile(r'

\w+@(\w+\.)+\w+')

string='

[email protected]

's=c.search(string)

ifs:

print('ok'

)

print(s.group())

驗證乙個字串是否是正確的url格式

字串切割

​- 說明:某些情況下,無法通過字串函式進行切割,可以使用正則的方式處理,如:按照數字切割

​- 示例:

​```python

importre​

c = re.compile(r'\d'

)​string = '

正則1其實不難2但是學完發現自己寫不出來3是這樣吧'#

按照正則進行切割,可以指定切割次數,預設不限制,等價於:re.split()

ret = c.split(string, maxsplit=1)​

print

(ret)

print(type(ret))

示例:

importre​

'''# 簡單的正則替換,不需要人為干預替換過程

c = re.compile(r'\d')

​string = 'daeuo1iwuabca3sdalksjabcd2askabc'

​ret = c.sub('yyy', string)

​print(ret)

'''def

deal(s): #

引數是每乙個匹配整個的正則結果物件

ret =int(s.group()) #

會使用該函式返回的字串替換對應的匹配

return str(ret * 2)

可以干預正則替換的過程,傳遞乙個函式

ret = re.sub(r'

\d', deal, '

sdh1askj2dlk3saj')

print(ret)

python正規表示式元字元 正規表示式

字元 描述將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個 向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了 regexp 物件的 multiline 屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束...

Python 正規表示式

1.在python中,所有和正規表示式相關的功能都包含在re模組中。2.字元 表示 字串的末尾 如 road 則表示 只有當 road 出現在乙個字串的尾部時才會匹配。3.字元 表示 字元中的開始 如 road 則表示 只有當 road 出現在乙個字串的頭部時才會匹配。4.利用re.sub函式對字串...

Python正規表示式

學習python自然而然就不得不面對正規表示式這個難題。當初在沒有學習python之前,自己也曾經嘗試著學習過正規表示式,但是那時候感覺很麻煩,很難懂,結果就是不了了之。但是現在學習python我用的書是 python基礎教程 第二版 這本書中對re模組的講解很簡單易懂,內容不多但起碼把人領進門了,...