日韩性视频-久久久蜜桃-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不卡在线免费观看 | 欧洲精品视频在线观看 | 性一交一乱一透一a级 | 国产嫩草在线观看 | 天天干天天操天天操 | 亚洲成人av电影 | 成人免费看片'在线观看 | 国产xxx在线| 四虎网址在线观看 | 国产人成免费视频 | 青青草av在线播放 | 性高湖久久久久久久久免费 | 男女午夜影院 | 欧美激情自拍偷拍 | 免费国产网站 | 午夜肉伦伦 | 激烈娇喘叫1v1高h糙汉 | 亚洲中文字幕无码av永久 | 求毛片网站 | 尤物精品视频在线观看 | av 日韩 人妻 黑人 综合 无码 | 香蕉视频官方网站 | 天堂一级片 | 欧美一区日韩一区 | 日日影院| 色精品视频 | 久久在线免费观看视频 | 91高跟黑色丝袜呻吟在线观看 | 亚洲国产不卡 | 精品一区在线观看视频 | 日韩精品午夜 | 婷婷色九月 | 看片久久 | 九月婷婷| 日本成人性爱 | 欧美一级特黄aaaaaa | 五月婷婷在线播放 | 日本中文字幕一区 | 成人黄色在线看 | 国产精品无码一区二区三 | 成人开心网 | 香港一级淫片免费放 | 国产午夜精品理论片在线 | jizz成熟丰满日本少妇 | 天天操夜夜操狠狠操 | 999精品在线| 天天干天天摸天天操 | 欧美视频成人 | 欧美xxxxxx片免费播放软件 | 成人免费高清在线观看 | 在线天堂网 | 日韩一级av毛片 | 日韩有码一区 | 国产尤物在线观看 | 99日精品 | h视频国产 | 成人精品网 | 大陆农村乡下av | 亚洲最大成人在线视频 | 中文字幕无码精品亚洲资源网久久 | 香蕉久久久 | 91高潮大合集爽到抽搐 | 色屁屁一区二区三区视频 | 反差在线观看免费版全集完整版 | 黄色美女毛片 | www.日本免费| 国产高清视频网站 | 一区二区三区www | 97人妻精品一区二区 | 色网站在线看 | jzzijzzij亚洲成熟少妇18 欧美www在线观看 | 精品伊人久久 | 一区二区欧美日韩 | 国产一区二区视频免费 | 国产地址| 朝桐光av在线一区二区三区 | 网址在线观看你懂的 | 日韩在线视频你懂的 | 人人干夜夜操 | 26uuu精品一区二区 | 日本aⅴ在线观看 | 成人亚洲 | 毛片视频软件 | 又黄又爽无遮挡 | 国产精品青青草 | 欧美人与性动交g欧美精器 国产在线视频91 | 在线观看免费福利 | 日韩国产欧美在线观看 | 国产免费成人av | 一二三区中文字幕 | 欧美国产精品一二三 | 狠狠干五月天 | 永久免费未满蜜桃 | 国产精品777 | 欧美性精品 | av在线高清观看 | 亚洲九区 | 婷婷国产| 五月天社区 |