對Python中正則表達式的理解,主要就是對符號的理解,本文即對Python中常用的正則表達式符號進行簡析。其主要的符號有:
.
默認匹配一個字符,不包含換行符,如果設置DOTALL則匹配換行符
^
匹配行首
$
匹配行尾
*
匹配0個或者多個重復
+
匹配一個或者多個重復
?
匹配一個或者零個重復
*?,+?,??
按照非貪婪模式匹配
{m},{m,n},{m,n}?
分別匹配m個重復,m至n個重復,m至n個重復按照非貪婪模式
\
轉義
[]
[abc],[a-z][^a-z]
|
或者匹配 'a|b'
(...)
匹配組
(?iLmsux) (?:...) (?P...) >>> re.match('(?P abc){2}','abcabc').groupdict() {'name': 'abc'} (?P=name) >>> re.match(r'(?P abc)----(?P=name)','abc----abc').group() 'abc----abc' (?#...) #后面的內容為注釋 (?=...)
匹配的字符串后面的內容需要匹配
>>> re.match(r'phone(?=\d{3})','phone123').group() 'phone'# (?!...)
匹配的字符后面內容不能匹配
>>> re.match(r'phone(?!\d{3})','phoneabc123').group() 'phone' (?<=...)
匹配的字符串前面需要匹配
(?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
