Day17——正則表達(dá)式

一、常用字符

表達(dá)式 功能
普通字符 匹配字符本身
. 配任意除換行符"\n"外的字符
\w 匹配字母、數(shù)字、下劃線、中文
\W 匹配非字母、數(shù)字、下劃線、中文
\s 匹配空白字符
\S 匹配非空白字符
\d 匹配數(shù)字字符
\D 匹配非數(shù)字字符
\b 檢測(cè)(當(dāng)前所在位置是否是)單詞邊界
\B 檢測(cè)非單詞邊界
^ 檢測(cè)字符串開頭
$ 檢測(cè)字符串結(jié)尾
[ ] [字符集] 匹配字符集中的任意一個(gè)字符
[字符1-字符2] 匹配字符1到字符2中所有的字符
例: [a-zA-Z\d_] 數(shù)字字母下劃線
[^字符集] 匹配沒有在字符集中的其他任意字符
\ 轉(zhuǎn)義符號(hào),使后一個(gè)字符改變?cè)瓉淼囊馑?/td>
* (貪婪) 匹配前一個(gè)字符0次或多次
+ (貪婪) 匹配前一個(gè)字符1次或多次
? (貪婪) 匹配前一個(gè)字符0次或1次
{ } {M,N}(貪婪) 匹配前一個(gè)字符至少M(fèi)次到最多N次
{M,}(貪婪) 匹配前一個(gè)字符至少M(fèi)次
{,N}(貪婪) 匹配前一個(gè)字符最多N次
{N} 匹配前一個(gè)字符N次
| (分之) 表達(dá)式1|表達(dá)式2|... 依次將表達(dá)式匹配,直到成功,否則失敗
( ) (分組) 將括號(hào)中的內(nèi)容看成一個(gè)整體
分組重復(fù) '\數(shù)字'重復(fù)前面第幾個(gè)分組匹配到的內(nèi)容
貪婪? 惰性 盡可能少的匹配

二、內(nèi)置函數(shù)

表達(dá)式 功能 返回值
compile(pattern,flags=0) 將正則轉(zhuǎn)換成正則對(duì)象 正則對(duì)象
fullmatch(pattern, string, flags=0) string與pattern完全匹配 匹配對(duì)象\None
match(pattern, string, flags=0) string的開頭與pattern進(jìn)行匹配 匹配對(duì)象\None
search(pattern, string, flags=0) 在string中去匹配出第一個(gè)符合pattern的子串 匹配對(duì)象\None
split(pattern, string, maxsplit=0, flags=0) 將string按照滿足pattern要求的子串進(jìn)行切割 列表
sub(pattern, repl, string, count=0, flags=0) 將string中能夠和pattern匹配的子串替換成repl 新字符串
findall(pattern, string, flags=0) 在string中獲取滿足pattern的所有子串(如有分組,只獲取分組中內(nèi)容; 如有多個(gè)分組,列表中的元素是元組) 列表
finditer(pattern, string, flags=0) 在string中獲取滿足pattern的所有子串 迭代器
注:
pattern:正則表達(dá)式
string、repl:字符串
maxsplit:最大分割次數(shù)(下標(biāo)),默認(rèn)0:全部分割
count:替換的個(gè)數(shù)(前count個(gè)),默認(rèn)0:全部替換
flags:編譯標(biāo)志位
標(biāo)志(flags) 功能
re.I(IGNORECASE) 忽略大小寫
re.S(DOTALL) 使.匹配包括換行在內(nèi)的所有字符
re.M(MULTILINE) 多行匹配,影響^和$
re.U 根據(jù)Unicode字符集解析字符,這個(gè)標(biāo)志影響\w,\W,\b,\B
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容