早上在家看了會python,主要看了下正則表達式相關(guān)的一點知識
1.正則表達式是一個特殊的字符序列笼平,它能幫助你方便 的檢查一個字符串是否與某種模式匹配园骆。re模塊使Python語言擁有全部的正則表達式功能。
eg:import re
? ? ? ? r=r'ab'
? ? ? ? printre.findall(r,'abcdefgabcd')====>[‘a(chǎn)b’寓调,’ab’]
注意:如果有元字符遇伞,注意使用轉(zhuǎn)義字符’\’
eg:print ‘\n’====>換行
? ? ? ? print ‘\\n’====>輸出\n
? ? ? ? print r ‘\n’====>輸出\n
2.元字符介紹
^匹配行首
$匹配行尾
.匹配單字符
[]匹配指定的一個字符集
[^ ]補集匹配不在區(qū)間范圍內(nèi)的字符,注意^放在前面
eg:r = r‘123’
? ? ? ? re.findall(r,’12345612345’)====>[‘123’]
? ? ? ? r = r ‘345$’
? ? ? ? re.findall(r,’1234512345’)====>[‘345’]
? ? ? ? r = r’3.5’
? ? ? ? re.findall(r,’1234512345’)====>[‘345’捶牢,’345’]
? ? ? ? r = r‘a(chǎn)[a-z A-Z 0-9]c’
? ? ? ? re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘a(chǎn)bc’,’aCc’,’a5c’,’a3c’]
? ? ? ? r = r’a[^0-9]c’
? ? ? ?re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘a(chǎn)bc’,’aCc’]
3.特殊意義字符
\d代表數(shù)字[0-9]
\D非數(shù)字
\s空白字符
\S非空白字符
\w單詞字符[a-zA-Z0-9_]
\W非單詞字符
{}前一個字符的重復(fù)的次數(shù) 前一個字符在一個范圍內(nèi)的重復(fù)次數(shù)
*將前一字符匹配大于等于0次鸠珠,{0,}效果等價于*
+將前一字符匹配大于等于1次巍耗,{1,}效果等價于+
?將前一字符匹配0次或1次,表示是否出現(xiàn)渐排,{0,1}效果等 價于?
*?盡可能少的匹配
()分組
eg:r = r’a\dc’
? ? ? ? re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘a(chǎn)5c’,’a3c’]
? ? ? ? r = r’a\Dc’
? ? ? ? re.findall(r,’abc,aCc,a5c,a3c,afg’)====>[‘a(chǎn)bc’,’aCc’]
4.正則常用函數(shù)
compile編譯后執(zhí)行速度更快
findall返回匹配列表
match匹配字符串開頭炬太,返回第一個匹配的內(nèi)容
search匹配字符串全文,返回第一個匹配的內(nèi)容
sub字符串正則替換驯耻,返回替換字符串
subn字符串正則替換亲族,返回元組(替換字符串,替換次數(shù))
split返回切割后的列表
由于家里停電可缚,就沒有繼續(xù)學(xué)習(xí)霎迫,晚上導(dǎo)致老徐的分享也擱淺了