国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python正則表達(dá)式和re庫知識點(diǎn)總結(jié)

2020-02-16 01:05:43
字體:
供稿:網(wǎng)友

正則表達(dá)式是定義搜索模式的字符序列。通常這種模式被字符串搜索算法用于字符串上的“查找”或“查找和替換”操作,或者用于輸入驗(yàn)證。

1. 正則表達(dá)式的語法

. 表示任何單個字符

[] 字符集,對單個字符給出取值范圍

[^] 非字符集,對單個字符給出排除范圍

*前一個字符0次或者無限次擴(kuò)展

+前一個字符1次或無限次擴(kuò)展

?前一個字符0次或1次擴(kuò)展

|左右表達(dá)式任意一個

{m}擴(kuò)展前一個字符m次

{m,n}擴(kuò)展前一個字符m至n次

^匹配字符串開頭

$匹配字符串結(jié)尾

()分組標(biāo)記,內(nèi)部只能使用|操作符

d數(shù)字,等價于[0-9]

w單詞字符,等價于[A-Z,a-z,0-9]

2. python中re庫的使用

Re庫是python的標(biāo)準(zhǔn)庫,主要用于字符串匹配,調(diào)用方法:import re

2.1. 正則表達(dá)式字符串的類型

re庫采用raw string類型來表示正則表達(dá)式,表示為
r'text'
raw string是不包含對轉(zhuǎn)義符的再次轉(zhuǎn)義的字符串,總而言就是string會對字符轉(zhuǎn)義,而raw string不會,因?yàn)樵谡齽t表達(dá)中會出現(xiàn)轉(zhuǎn)義符號,所以避免繁瑣我們使用raw string

2.2. Re庫主要功能函數(shù)
re.search()在一個字符串中搜索正則表達(dá)式的第一個位置,返回match對象

re.match()從一個字符串的開始位置起匹配正則表達(dá)式,返回match對象

re.findall()搜索字符串,以列表類型返回全部能匹配的子串

re.split()將一個字符串按照正則表達(dá)式匹配結(jié)果進(jìn)行分割,返回列表類型

re.finditer()搜索字符串,返回一個匹配結(jié)果的迭代類型,每個迭代元素是match對象

re.sub()在一個字符串中替換所有匹配正則表達(dá)式的子串,返回替換后的字符串

2.2.1. re.search(pattern, string, flags=0)
在一個字符串中搜索正則表達(dá)式的第一個位置,返回match對象

pattern : 正則表達(dá)式的字符串或原生字符串表示

string : 待匹配字符串

flags : 正則表達(dá)式使用時的控制標(biāo)記

re.I re.IGNORECASE 忽略正則表達(dá)式的大小寫,[A‐Z]能夠匹配小寫字符

re.M re.MULTILINE 正則表達(dá)式中的^操作符能夠?qū)⒔o定字符串的每行當(dāng)作匹配開始

re.S re.DOTALL 正則表達(dá)式中的.操作符能夠匹配所有字符,默認(rèn)匹配除換行外的所有字符

舉例說明:

import rematch = re.search(r'[1-9]/d{5}', 'BIT 100081')if match:  print(match.group(0)) 結(jié)果為100081

2.2.2. re.match(pattern, string, flags=0)

從一個字符串的開始位置起匹配正則表達(dá)式,返回match對象

參數(shù)同search函數(shù)

舉例說明:

import rematch = re.match(r'[1-9]/d{5}', 'BIT 100081')print(match.group(0)) 結(jié)果會報錯,match為空,因?yàn)閙atch函數(shù)是從字符串開始位置開始匹配,因?yàn)閺拈_始位置沒有匹配到,所以為空            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 阜阳市| 焦作市| 揭阳市| 宝坻区| 托克逊县| 宁陵县| 衡阳市| 铜山县| 仁寿县| 桐庐县| 甘肃省| 耒阳市| 梁河县| 德令哈市| 深圳市| 措勤县| 罗甸县| 夹江县| 黑水县| 固始县| 静乐县| 萨嘎县| 修武县| 静宁县| 惠州市| 石家庄市| 台东县| 贵溪市| 金川县| 岳池县| 平远县| 广东省| 洪泽县| 咸丰县| 秭归县| 商河县| 秦安县| 芜湖县| 水富县| 明星| 磐安县|