天天看點

一起學Python:正規表達式概述

re子產品操作

在Python中需要通過正規表達式對字元串進行比對的時候,可以使用一個子產品,名字為re

運作結果為:

re.match() 能夠比對出以xxx開頭的字元串比對單個字元

在上一小節中,了解到通過re子產品能夠完成使用正規表達式來比對字元串

本小節,将要講解正規表達式的單字元比對

<col>

字元

功能

.

比對任意1個字元(除了\n)

[ ]

比對[ ]中列舉的字元

\d

比對數字,即0-9

\D

比對非數字,即不是數字

\s

比對空白,即 空格,tab鍵

\S

比對非空白

\w

比對單詞字元,即a-z、A-Z、0-9、_

\W

比對非單詞字元

運作結果:

其他的比對符參見後面章節的講解比對多個字元

比對多個字元的相關格式

*

比對前一個字元出現0次或者無限次,即可有可無

+

比對前一個字元出現1次或者無限次,即至少有1次

?

比對前一個字元出現1次或者0次,即要麼有1次,要麼沒有

{m}

比對前一個字元出現m次

{m,n}

比對前一個字元出現從m到n次

需求:比對出,一個字元串第一個字母為大小字元,後面都是小寫字母并且這些小寫字母可有可無

需求:比對出,變量名是否有效

需求:比對出,0到99之間的數字

需求:比對出,8到20位的密碼,可以是大小寫英文字母、數字、下劃線

比對開頭結尾

^

比對字元串開頭

$

比對字元串結尾

需求:比對163.com的郵箱位址

運作結果:

比對分組

(ab)

将括号中字元作為一個分組

\num

引用分組num比對到的字元串

需求:比對出0-100之間的數字

需求:比對出163、126、qq郵箱

需求:比對出​<code>​&lt;html&gt;hh&lt;/html&gt;​</code>​

需求:比對出​<code>​&lt;html&gt;&lt;h1&gt;www.itcast.cn&lt;/h1&gt;&lt;/html&gt;​</code>​

一起學Python:正規表達式概述

image