1.re模塊
在python中使用正則表達式
轉義符 : 在正則中的轉義符\也是在python中的轉義符
‘\(‘ 表示匹配小括號
[()+*?/$.] 在字符組中一些特殊的字符會現出原形
所有的\w \d \s(\n,\t, ) \W \D \S 都表示它原有的意義
[-] 只有寫在字符組的首位的時候表示普通的減號
寫在其他位置的時候表示範圍[1-9]
如果想匹配減號[1\-9] 就這樣寫
re模塊常用的方法
findall ***** 匹配所有符合的字符串
ret = re.findall("\d+‘,1994wjs521‘)
print(ret) 參數 返回值類型 : 列表 返回值個數 : 1 返回值內容 : 所有匹配上的項
search ***** 只要匹配上了就不再進行匹配
ret = re.search("\d+","@$1994wjs521")
print(ret) 返回值類型 : 正則匹配結果的對象 返回值個數 : 1 如果匹配上了就返回對象 沒有匹配上就返回None
print(ret.group()) 返回的對象通過group來獲取匹配到的第一個結果
match ** 只要第一個字符不符合就不再繼續匹配,並返回None
ret = re.match("\d+","@!1994wjs521")
print(ret)
print(ret.group) 匹配不到時,用group()會報錯
sub *** 替換 可以控制想替換的個數
ret = re.sub("\d+","Love","1994wjs521"1)
print(ret)
subn *** 也是替換 也可以控制替換的次數,並且會返回替換的次數是一個元祖.
ret = re.subn("\d+","Love","1994wjs521",1)
print(ret)
split *** 切割
ret = re.split("\d+","1994wjs521")
print(ret)
進階方法----爬蟲\自動化開發
compile ***** 時間效率 節省時間 : 只有在多次使用某一個相同的正則表達式的時候, 這個compile才會幫助我們提高程序的效率
ret = re.compile("\d+") 制定了一個正則表達式
ret1 = ret.search("1994wjs521")
print(ret1.group)
finditer ***** 空間效率
ret = re.finditer("\d+","1994wjs521")
for i in ret:
print(i.group())
1.re模塊