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

歡迎訪問 生活随笔!

生活随笔

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

python

Python学习16 正则表达式2 re模块

發布時間:2023/12/13 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python学习16 正则表达式2 re模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

re 模塊

re 模塊:
Python的 re 模塊實現了正則表達式處理的功能。
導入re模塊后,使用findall、search函數可以進行匹配

查找:match和search

多個匹配上的,也只會返回第一個匹配上的
re.match():
需要特別注意的是,這個方法并不是完全匹配。它僅僅決定在字符串開始的位置是否匹配。所以當pattern結束時若還有剩余字符,仍然視為成功。想要完全匹配,可以在表達式末尾加上邊界匹配符’$’

查找:finditer 和 findall 和 fullmatch

re.finditer()

下標從0開始

re.findall()

o\s+:匹配o和后面的一個或多個空白字符

re.fullmatch()

h.*d:h和d之間0或多個除\n之外的任意字符

分組: group()和groupdict()

group()

re.groupdict()

在匹配時使用“?P<>”,獲得匹配結果后調用.groupdict()方法,獲得字典類型的結果

替換:re.sub()


把字符串里的數字變成兩倍:

生成一個正則表達式對象: re.compile()

正則表達式規則

# 1. 數字和字母都表示它本身 print(re.search(r'x', 'hello xyz')) # <re.Match object; span=(6, 7), match='x'> print(re.search(r'5', '1a3b56c8d')) # <re.Match object; span=(4, 5), match='5'># 2. 很多字母前面添加 \ 會有特殊含義。 print(re.search(r'd', 'good')) # <re.Match object; span=(3, 4), match='d'> print(re.search(r'\d', 'good')) # None print(re.search(r'\d', 'go1234od')) # <re.Match object; span=(4, 5), match='1'># 3.大多數標點符號 都有特殊含義。如果想要使用標點符號,需要加 \ 。 print(re.search(r'+', '1+2=3')) # re.error: print(re.search(r'\+', '1+2=3')) # <re.Match object; span=(1, 2), match='+'>

案例: 判斷是否是數字

原始:

正則表達式:

案例:提取字符串中內容

案例:QQ判斷

QQ號碼

QQ用戶名1

QQ用戶名2

\w:匹配字母數字下劃線

案例總結

總結

以上是生活随笔為你收集整理的Python学习16 正则表达式2 re模块的全部內容,希望文章能夠幫你解決所遇到的問題。

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