正規表示式

2022-07-27 04:48:11 字數 1720 閱讀 4906

模組:

什麼是模組: 模組就是一組功能的集合

模組的型別:

內建模組:不需要自己安裝,python自帶的模組

第三方模組:需要我們自己安裝的模組

自定義模組:我們自己寫的模組

例:import os    #匯入模組

os.remove()   #刪除檔案

os.rename()   #重新命名檔案

模組為我們提供功能,這個操作的物件本來就存在,模組就是python提供給我們操作物件的方法.

正規表示式的作用

#從大段的文字中找到符合規則的內容

#爬蟲  從網頁的字串中獲取你想要的資料

#日誌分析

#判斷某個字元是否完全符合規則

#表單驗證  手機號   qq號碼  郵箱  銀行卡  身份證號碼  密碼

正規表示式只和字串打交道.

字元組:[ ]  寫在中括號裡面的內容,都出現在下面的某乙個字元的位置上都是符合規則的.

[0-9]  匹配數字

[a-z]  匹配小寫字母

[a-z]  匹配大寫字母

[a-za-z]   匹配大小寫字母

[a-za-z0-9]   匹配大小寫字母數字

[a-za-z0-9_]  匹配大小寫字母數字下劃線

元字元\w  匹配數字字母下劃線   等價於[a-za-z0-9_]

\d  匹配所有的數字  [0-9]

\s  匹配所有的空白符   回車/換行符  製表符  空格  space[\n\t ]

匹配換行符  回車\n

匹配製表符  tab  \t

匹配空格       

\w \d \s 和\w \d \s取反

[\w\w] [\d\d] [\s\s]   是三組全集,匹配所有的字元

\b  表示單詞的邊界

和轉義字元相關的元字元

\w \d \s(\n\t) \b \w \d \s

^  匹配乙個字串的開始

$  匹配乙個字串的結束

.   匹配出換行符之外的所有字元

只要出現在中括號內的內容都可以匹配

[^]  只要不出現在中括號內的內容都可以匹配

有一些特殊意義的元字元進入字元組中會恢復他本來的意義: . | [ ] ()

a|b   或    符合a規則或者b規則的都可以被匹配

如果a規則是b規則的一部分,且a規則比b規則要苛刻/長,就把a規則寫在前面

將更複雜的\更長的規則寫在最前面

()   分組    表示給幾個字元加上量詞約束的需求的時候,就給這些量詞分在乙個組裡

量詞(6個)

表示這個量詞之前的字元出現n次

表示這個量詞之前的字元至少出現n次

表示這個量詞之前的字元出現n--m次

?      表示匹配量詞之前的字元出現0次或1次

*    表示匹配量詞之前的字元出現0次或多次

+    表示匹配量詞之前的字元出現1次或多次

正規表示式的匹配特點:  貪婪匹配

貪婪匹配會在允許的範圍內取最長的結果

非貪婪匹配/惰性匹配:  在量詞後面加上?

.*?x    匹配任意長度的非換行字元,直到遇見x停止

關於字串挪到python中的轉義問題:只需要在工具中測試完畢,確認可以匹配以後,挪到python中在字串的外面加上r,r' '即可.

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...

Linux正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...