正則表達式是一種用來匹配字符串的強有力的武器
其設計思想是用一種描述性的語言來給字符串定義一個規則,凡是符合規則的字符串,就認爲匹配,不然就是不匹配
判斷一個字符串是不是匹配的方法是
1) 建立一個匹配的正則表達式
2) 用該正則表達式去匹配輸入來判斷是否匹配
在正則表達式中,若是直接給出字符,就是精確匹配
python
使用示例:
\d 匹配一個數字
\w 匹配一個字母或數字
\s 匹配一個空格(也包括Tab等空白符)
. 匹配任意字符
* 匹配任意個字符(包括0個)
+ 匹配至少一個字符
? 匹配0個或1個字符
{n} 匹配n個字符
{n,m} 匹配n-m個字符
\d{3}\s+\d{3,8} 匹配開頭3位數字,中間有多個空格,最後再接3-8個數字的字符串
\d{3}\-\d{3,8} 匹配開頭3位數字,中間有'-',最後再接3-8個數字的字符串,因爲'-'是特殊字符,在正則表達式中,要用'\'轉義
[0-9a-zA-Z\_] 能夠匹配一個數字、字母或者下劃線
[0-9a-zA-Z\_]+ 匹配至少由一個數字、字母或者下劃線組成的字符串
[a-zA-Z\_][0-9a-zA-Z\_]* 匹配由字母或下劃線開頭,後接任意個由一個數字、字母或者下劃線組成的字符串,也就是Python合法的變量
[a-zA-Z\_][0-9a-zA-Z\_]{0, 19} 更精確地限制了變量的長度是1-20個字符(前面1個字符+後面最多19個字符)
A|B 匹配A或B
(P|p)ython 匹配'Python'或者'python'
^\d 必須以數字開頭,^表示行的開頭
\d\$ 必須以數字結束,\$表示行的結束
py 能夠匹配'python'
^py$ 只能匹配'py'正則表達式