日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python正则表达式实例教程_Python正则表达式经典入门教程

發布時間:2025/3/15 python 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python正则表达式实例教程_Python正则表达式经典入门教程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文實例總結了Python正則表達式基本用法。分享給大家供大家參考,具體如下:

正則表達式在平時做文本處理(爬蟲程序去解析html中的字段,在分析log文件的時候需要抓取一些關鍵數據)的時候經常會用到。一般我們會使用到Python的re庫。如果正則表達式自己代碼中反復被用到的時候,我們可以將這個正則表達式使用re.compile函數轉換成一個object方便調用。

match

將輸入的字符串從第一個字符開始匹配,如果不匹配將會直接返回空。

search

和match不同,search能自由的在字符串中任一開始位置開始匹配,直到匹配上了。

re中的選項

通常在flag里面可以設置.

re.I 忽略掉大小寫

re.L 讓\w,\W,\b,\B,\s和\S做本地化識別

re.M 當匹配的時候支持多行匹配.

re.DEBUG 顯示正則表達式的調試信息

re.S 讓.號匹配本行的全部字符。

sub 替換

import re

phone='188-88-88 # this is my phone number'

num = re.sub(r'#.*$','',phone)

# num ==188-88-88

num = re.sub(r'\D','',phone)

# num = 1888888

還能使用這個來做代碼的轉義,有點像在 sublime text里面使用的查找替換。比如說我需要將C語言里面的宏定義轉換成lua里面的變量定義

import re

print( re.sub( r'#define\s+([a-zA-Z_]+)\s+([a-zA-Z_0-9]+)', r'_G.\1 = \2', '#define MAX_RECV_SIZE 100' ) )

#_G.MAX_RECV_SIZE = 100

subn函數類似,只是能定制替換的次數。

findall

將匹配到的內容返回成一個數組,這個應該是比較常用的方法。

print( re.findall( '\d+', '66,88,88,777' ) )

# ['66', '88', '88', '777']

finditer

匹配的內容以迭代器的方式返回,我們可以對這個做循環,返回的時候MatchObject

for num in re.finditer( '\d+', '66,88,88,777' ):

print num.group()

'''

66

88

88

777

'''

split

re.split(pattern, string, maxsplit=0, flags=0)

>>> re.split(',', 'Words, words, words.')

['Words', ' words', ' words.']

>>> re.split('\W+', 'Words, words, words.')

['Words', 'words', 'words', '']

>>> re.split('(\W+)', 'Words, words, words.')

['Words', ', ', 'words', ', ', 'words', '.', '']

大寫的\W表示了非字串,這個在語法里面可以查到。如果加了括號,將不會省略掉匹配到的split的字串。最后這個在數組中作為字串分隔符的,.都被保留在數組中了。

escape

這個函數是一個輔助函數,當大量編寫正則表達式的時候,可能我們固定的一些字串中包含了正則的保留字串,但是我們不需要讓程序當它是re表達式的時候,可以使用這個函數將字串做轉換。

re.escape('1234@gmail.com')

# result

1234\\@gmai\\.com

備注語法:

模式

描述

^

匹配字符串的開頭

$

匹配字符串的末尾。

.

匹配任意字符,除了換行符,當re.DOTALL標記被指定時,則可以匹配包括換行符的任意字符。

[…]

用來表示一組字符,單獨列出:[amk] 匹配 ‘a','m'或'k'

[^…]

不在[]中的字符:[^abc] 匹配除了a,b,c之外的字符。

re*

匹配0個或多個的表達式。

re+

匹配1個或多個的表達式。

re?

匹配0個或1個由前面的正則表達式定義的片段,非貪婪方式re{ n}

re{ n,}

精確匹配n個前面表達式。

re{ n, m}

匹配 n 到 m 次由前面的正則表達式定義的片段,貪婪方式a

(re)

G匹配括號內的表達式,也表示一個組

(?imx)

正則表達式包含三種可選標志:i, m, 或 x 。只影響括號中的區域。

(?-imx)

正則表達式關閉 i, m, 或 x 可選標志。只影響括號中的區域。

(?: re)

類似 (…), 但是不表示一個組

(?imx: re)

在括號中使用i, m, 或 x 可選標志

(?-imx: re)

在括號中不使用i, m, 或 x 可選標志

(?#…)

注釋.

(?= re)

前向肯定界定符。如果所含正則表達式,以 … 表示,在當前位置成功匹配時成功,否則失敗。但一旦所含表達式已經嘗試,匹配引擎根本沒有提高;模式的剩余部分還要嘗試界定符的右邊。

(?! re)

前向否定界定符。與肯定界定符相反;當所含表達式不能在字符串當前位置匹配時成功

(?> re)

匹配的獨立模式,省去回溯。

\w

匹配字母數字

\W

匹配非字母數字

\s

匹配任意空白字符,等價于 [\t\n\r\f].

\S

匹配任意非空字符

\d

匹配任意數字,等價于 [0-9].

\D

匹配任意非數字

\A

匹配字符串開始

\Z

匹配字符串結束,如果是存在換行,只匹配到換行前的結束字符串。c

\z

匹配字符串結束

\G

匹配最后匹配完成的位置。

\b

匹配一個單詞邊界,也就是指單詞和空格間的位置。例如, ‘er\b' 可以匹配”never” 中的 ‘er',但不能匹配 “verb” 中的 ‘er'。

\B

匹配非單詞邊界。'er\B' 能匹配 “verb” 中的 ‘er',但不能匹配 “never” 中的 ‘er'。

\n, \t, 等.

匹配一個換行符。匹配一個制表符。等

\1…\9

匹配第n個分組的子表達式。

\10

匹配第n個分組的子表達式,如果它經匹配。否則指的是八進制字符碼的表達式。

PS:這里再為大家提供2款非常方便的正則表達式工具供大家參考使用:

希望本文所述對大家Python程序設計有所幫助。

總結

以上是生活随笔為你收集整理的python正则表达式实例教程_Python正则表达式经典入门教程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产丰满农村老妇女乱 | 亚洲裸体网站 | 午夜天堂影院 | 国产尤物视频 | 亚洲av无码一区二区三区性色 | 亚洲成av人片在www色猫咪 | aaaaa黄色片| 国产影视一区二区 | 国产寡妇亲子伦一区二区三区四区 | av永久免费网站 | 黄色a级大片 | 午夜极品 | 一区二区三区在线视频免费观看 | 国产色视频一区二区三区qq号 | 宅男噜噜噜66一区二区 | 精品久久久99 | 三级中文字幕 | 亚洲阿v天堂 | 正在播放一区二区 | 中文字幕免费视频观看 | 亚洲欧美高清在线 | 日本在线免费观看 | 欧美一区二区三区啪啪 | 亚洲色成人一区二区三区小说 | 大肉大捧一进一出好爽视频 | 亚洲精品性 | 伊人国产视频 | 国产aa | 欧美插插视频 | 国产伦精品一区二区三区千人斩 | 亚洲a成人| 日韩av一区二区三区在线观看 | 在线高清观看免费观看 | 在线精品一区 | 久久久精品一区二区 | 日批在线观看 | 一本高清视频 | 每日av更新| 欧美性猛交xxxx乱大交hd | 日韩在线视频你懂的 | 日韩欧美资源 | 操女人视频网站 | 日韩有码一区二区三区 | 亚洲激情在线 | 91美女网站 | 天天色影综合网 | 五月天婷婷久久 | 欧美精品韩国精品 | 色妞色| 成人黄网免费观看视频 | 成人毛片一级 | a级片毛片 | 一级黄色免费大片 | 青青草免费看 | 色婷婷av一区二区三区gif | 成人国产精品视频 | www.色日本| 亚洲天堂五月天 | 色戒在线免费 | 国产一区二区三区高清 | 男女啪啪毛片 | 日本一区视频 | 国产又粗又猛又爽又黄的网站 | 欧美国产一级片 | 国产精品视频入口 | 另类视频在线观看+1080p | av在线播放中文字幕 | 欧美一级视频在线观看 | 日韩一区久久 | 天天做天天爽 | 久久久久久色 | 欧美精品小视频 | 91精品国产高清一区二区三区蜜臀 | 亚洲激情在线观看视频 | 中文字幕一区在线播放 | 久久久精品一区二区 | 国产99久久久国产精品成人免费 | 久久久久久久久久久久国产精品 | 99黄色片| 亚洲视频国产 | 成人精品视频在线观看 | 五月天免费网站 | 校园春色在线观看 | 国产三级国产精品国产专区50 | 永久免费精品影视网站 | 亚洲激情第一页 | 国产视频久久久 | 国产精选一区 | 中文字幕乱码人妻无码久久95 | 午夜爱| 57pao国产精品一区 | 亚洲美女屁股眼交3 | 视频一区二区中文字幕 | av 日韩 人妻 黑人 综合 无码 | 日韩视频精品在线 | 正在播放久久 | 538国产精品视频一区二区 | 伊人免费视频二 | 久久性色 |