標籤:結束 相關 定義 驗證 re模組 使用 自己 存在 規則
模組:
- 模組就是一組功能的集合,你要和某個東西打交道,而這個東西本身和Python沒有關係,這個東西本身就存在,Python提供了一個功能的集合,專門負責和這個東西打交道.
- 模組的類型:
- 內建模組 不需要我們自己安裝的 解譯器內建的
- 第三方模組 需要我們自己安裝的模組
- 自訂模組 我們自己寫的模組
- re模組:
- 在Python中使用Regex
- Regex:
- 是一種獨立的規則,獨立的語言,只和字串打交道
- 功能:
- 從大段的文字中找到符合規則的內容
- 比如說爬蟲,從網頁的字串中擷取你想要的資料
- 日誌分析.提取日誌中你想要擷取的資料
- 判斷某個字串是否完全符合規則
- 表單驗證:手機號,qq號.郵箱,銀行卡,社會安全號碼.密碼
- 規則:
- 字元組[ ]寫在括弧中的內容,都出現在下面的某一個字元的位置上且都是符合規則的
- [0-9]匹配數字
- [a-z]匹配小寫字母
- [A-Z]匹配大寫字母
- [a-zA-Z]匹配大小寫字母
- [a-zA-Z0-9]匹配大小寫字母+數字
- [a-zA-Z0-9_]匹配數字字母下滑線
- 元字元
- 貪婪匹配/惰性匹配:預設貪婪/量詞?惰性匹配
- 和轉義字母相關的元字元
- \w匹配數字字母下滑線 關鍵字(word) 如[a-zA-Z0-9_]
- \d匹配所有數字 關鍵字(digit) 如[0-9]
- \s匹配所有的空白符 \n斷行符號(分行符號),\t定位字元(Tab),空格
- \W,\D,\S是上面三個元字元的反義
- [\s\S][\d\D][\w\W]是三組全集 意思是匹配所有字元
- \b表示單詞的邊界
- ^和$
- . 表示匹配除了分行符號之外的所有字元
- [ ]只要出現在中括弧內的內容都可以被匹配
- [^]只要不出現在中括弧中的內容都可以被匹配(有一些有特殊意義的元字元進入字元組中會恢複它本來的意義: . | [ ] ( ) )
- a|b 或 符合a規則的或者b規則的都可以被匹配
- 如果a規則是b規則的一部分,且a規則比b規則要苛刻/長,就把a規則寫在前面(將更複雜的\更長的規則寫在最前面)
- ( ) 分組 表示給幾個字元加上量詞約束的需求的時候,就給這些量詞分在一個組
- 量詞:
- {n}表示這個量詞之前的字元出現n次
- {n,}表示這個量詞之前的字元至少出現n次
- {n,m}表示這個量詞之前的字元出現n-m次
- ? 表示匹配量詞之前的字元出現0次或者1次 表示可有可無
- + 表示匹配量詞之前的字元出現1次或者多次
- * 表示匹配量詞之前的字元出現0次或者多次
Python_Mix*re模組,元字元,量詞