日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

python正則表達(dá)式詳解 電話號(hào)碼正則表達(dá)式語法

通過前面的學(xué)習(xí),我們知道了調(diào)用Requests庫可以爬取HTML頁面,調(diào)用Beautiful Soup庫可以解析HTML頁面 。但是通常一個(gè)HTML頁面擁有非常多的信息,你總不能全部拿過來再手動(dòng)修改吧,所以就需要使用Re正則表達(dá)式來提取頁面的關(guān)鍵信息 。
正則表達(dá)式是什么?Re:Regular expression,可以簡潔、優(yōu)雅的表達(dá)一組字符串的表達(dá)式 。
舉個(gè)例子:
"Py""Pyt""Pyth""Pytho""Python"以上這組字符串有什么相似之處呢?沒錯(cuò),就是它們都是以”Py”開頭的 。
我們用了五行才把所有的字符串枚舉一遍,如果換成使用Re呢?一行OK!
Py(t|th|tho|thon)?N這只是五行字符串,如果是成千上萬行呢?那正則表達(dá)式用起來豈不是特別的爽 。
“一行勝千言” — 正則表達(dá)式正則表達(dá)式最最本質(zhì)的特征就是:簡潔、優(yōu)雅、一行勝千言 。
在我看來,就像是跟蘋果LOGO似的,極簡之美環(huán)繞其周 。
還有一個(gè)詞:求同存異 。
下面來看看正則表達(dá)式的語法:
正如上面所展示的,正則表達(dá)式由字符和操作符構(gòu)成 。

python正則表達(dá)式詳解 電話號(hào)碼正則表達(dá)式語法


常用操作符
來看一些經(jīng)典的正則表達(dá)式例子:
^[A-Za-z]+$ 由26個(gè)字母組成的字符串^-?d+$ 整數(shù)形式的字符串[1-9]d{5} 中國境內(nèi)郵政編碼d{3}-d{8}|d{4}-d{7} 國內(nèi)電話號(hào)碼Python中的Re庫Python為正則表達(dá)式提供了標(biāo)準(zhǔn)庫Re,用于匹配字符串 。
調(diào)用Re庫:
import re正則表達(dá)式的表示類型:
  • Re庫采用raw string類型表示正則表達(dá)式,形式為:r’text’ 。
例如:r'[1-9]d[5]’
raw string 類型是原生字符串類型,不能對(duì)轉(zhuǎn)義字符進(jìn)行再次轉(zhuǎn)義 。
  • Re庫還可以采用string類型表示正則表達(dá)式,更為繁瑣,形式為’text’ 。
例如:'[1-9]\d{5}’
前一個(gè)”是轉(zhuǎn)義字符 。
當(dāng)正則表達(dá)式包含轉(zhuǎn)義字符時(shí),更推薦使用raw string類型 。
Re庫的基本方法:
先來介紹一下Match對(duì)象:
Match對(duì)象是一次匹配的結(jié)果,包含很多的匹配信息 。
和response對(duì)象一樣,Match對(duì)象也有一些屬性和方法 。
python正則表達(dá)式詳解 電話號(hào)碼正則表達(dá)式語法


Match對(duì)象的屬性
python正則表達(dá)式詳解 電話號(hào)碼正則表達(dá)式語法


Match對(duì)象的方法
前面已經(jīng)介紹過如何調(diào)用對(duì)象的屬性和方法了,這里就不再贅述,可以百度做深入了解 。
python正則表達(dá)式詳解 電話號(hào)碼正則表達(dá)式語法


Re庫的六個(gè)基本方法
下面著重講解一下search方法:
re.search(pattern, string, flags=0)在一個(gè)字符串中搜索匹配正則表達(dá)式的第一個(gè)位置,返回Match對(duì)象 。
  • pattern:正則表達(dá)式的字符串或者原生字符串表示
  • string:帶匹配的字符串
  • flags:正則表達(dá)式使用時(shí)的控制標(biāo)記

python正則表達(dá)式詳解 電話號(hào)碼正則表達(dá)式語法


flags標(biāo)記取值
# 使用search方法匹配字符串match = re.search(r'[1-9]d{5}', 'A100001', flags=re.I)# 匹配成功則返回匹配后的字符串if match:print(match.group(0))注意:Match對(duì)象返回匹配結(jié)果,所以說Match返回值是bool型變量,故用條件語句判斷 。
Re庫的方法使用起來并沒有太大的難度,下面給出剩余方法總結(jié):
re.match(pattern, string, flags=0)從一個(gè)字符串的開始位置起匹配正則表達(dá)式,返回Match對(duì)象 。
參數(shù)同上 。

推薦閱讀