Python的正規表示式

2022-01-29 04:19:36 字數 957 閱讀 3744

今天看了下python的正規表示式,覺得挺好玩的,在這裡記錄一下。

摘抄自的乙個表:

這個表上已經基本上說明了正規表示式的用法了,python上是用re模組。

通過檢視python的doc知道,正規表示式有兩種方式:match和search

比如說我想寫個匹配e-mail的正規表示式。

這是乙個比較寬鬆的e-mail格式,name部分可以使用「."和」_「字元,對於@後的內容也沒有過多限制,類似這個樣子:

import re

email="[email protected]"

emailstr="sdf23 "+email+" dsf34.cd09//;l"

p=re.compile(r'[\w\.]+@\w+\.[\w\.]+')

m=re.match(p,email)

s=re.search(p,emailstr)

print "email:"+email

print "emailstr:"+emailstr

print "email_match:",m.group()

print "email_search:",s.group()

一些補充:

1、先說下貪婪模式與非貪婪模式

這個主要是看到了一篇文章,裡面應用了比較多的」.*?",剛開始對後面加的這個「?"不是很理解,一查知道是轉化為非貪婪模式。

舉個例子,在乙個網頁中有「test1

dsjhfjhtest2

"。如果不加"?"正規表示式」.*

",匹配出來的是整個「test1

dsjhfjhtest2

"。如果加「?",正規表示式」」.*?

",匹配出來的結果是"test1

"

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

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

python正規表示式及使用正規表示式的例子

正規表示式 正則表達用來匹配字串 正規表示式匹配過程 正規表示式語法規則 匹配除換行 n 外的任意字串 abcabc 轉義字元,使後乙個字元改變原來的意思 a c a c 字符集,對應的位置可以是字符集中任意字元,字符集中的字元可以逐個列出,也可以給出範圍,如 abc 或 a c 第乙個字元如果是 ...

Python 正規表示式

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