python的正則(一):簡(jiǎn)單夠用的basic版
不管是哪種編程語(yǔ)言,學(xué)習(xí)正則是一節(jié)必修課,python也是如此。正則通常被用來(lái)做什么?處理復(fù)雜的字符串及文本。比如,提取RTL的begin end之間的內(nèi)容,提取verilog的模塊端口完成自動(dòng)例化,處理APR的io file等。用好正則,常常可以事半功倍。
為了更輕松愉快地學(xué)習(xí)正則,我們分成三次講解:
一、特殊字符和基本用法
二、復(fù)雜規(guī)則
三、一些實(shí)例
本文是第一次講解,介紹正則的特殊字符和基本用法。
溫故而知新
回顧一:
在《python的數(shù)據(jù)類(lèi)型(三):字符串》中已經(jīng)介紹過(guò)一些字符串的處理函數(shù),先來(lái)一起回顧一下,見(jiàn)下圖,不記得的同學(xué)可以點(diǎn)擊鏈接看看。
回顧二:
與Perl語(yǔ)言的正則對(duì)比著學(xué)習(xí),可以加深理解和記憶。下面是兩篇Perl正則的介紹:
Perl在ASIC中的應(yīng)用——高級(jí)篇(1):Perl的正則表達(dá)式
Perl在ASIC中的應(yīng)用——實(shí)戰(zhàn)篇(3):網(wǎng)表處理
基本語(yǔ)法介紹
在正則的概念里,有一個(gè)術(shù)語(yǔ)叫“匹配”,匹配就是利用一些特殊字符如 . * + 等來(lái)描述一個(gè)字符串。比如有字符串'abbbc',我們可以用'ab+c'來(lái)描述。又如verilog的begin end塊可以用'begin.*end'來(lái)描述。我們可以看到,匹配不僅僅描述某一個(gè)字符串,而是描述某一類(lèi)字符串。
與Perl不同,Perl的正則是語(yǔ)言結(jié)構(gòu)的一部分,而Python的正則是定義在模塊包re里,使用時(shí)需要先import re。
下面,我們先來(lái)看看python正則的基本用法,為了簡(jiǎn)單、容易入門(mén),這次主要介紹與Perl正則語(yǔ)法類(lèi)似的部分。
特殊字符
. 除外的任意字符
^ 字符串的開(kāi)頭
$ 字符串的結(jié)尾
字符串邊界
B 非邊界
d 數(shù)字0到9
D 非數(shù)字
s 空白字符
S 非空白字符
w 字母a-z,A-Z,和下劃線_
W 大小寫(xiě)字母和下劃線 以外的其它字符
A 字符串開(kāi)頭
Z 字符串結(jié)尾
特殊字符前加轉(zhuǎn)義表示字符本身
空白字符
換行符newline 0x0a
制表符tab
回車(chē)符0x13
換頁(yè)符
垂直制表符
發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
10月31日立即下載>> 【限時(shí)免費(fèi)下載】TE暖通空調(diào)系統(tǒng)高效可靠的組件解決方案
-
即日-11.13立即報(bào)名>>> 【在線會(huì)議】多物理場(chǎng)仿真助跑新能源汽車(chē)
-
11月28日立即報(bào)名>>> 2024工程師系列—工業(yè)電子技術(shù)在線會(huì)議
-
12月19日立即報(bào)名>> 【線下會(huì)議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
-
即日-12.26火熱報(bào)名中>> OFweek2024中國(guó)智造CIO在線峰會(huì)
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍(lán)皮書(shū)》
推薦專(zhuān)題
- 1 【一周車(chē)話】沒(méi)有方向盤(pán)和踏板的車(chē),你敢坐嗎?
- 2 特斯拉發(fā)布無(wú)人駕駛車(chē),還未迎來(lái)“Chatgpt時(shí)刻”
- 3 特斯拉股價(jià)大跌15%:Robotaxi離落地還差一個(gè)蘿卜快跑
- 4 馬斯克給的“驚喜”夠嗎?
- 5 大模型“新星”開(kāi)啟變現(xiàn)競(jìng)速
- 6 海信給AI電視打樣,12大AI智能體全面升級(jí)大屏體驗(yàn)
- 7 打完“價(jià)格戰(zhàn)”,大模型還要比什么?
- 8 馬斯克致敬“國(guó)產(chǎn)蘿卜”?
- 9 神經(jīng)網(wǎng)絡(luò),誰(shuí)是盈利最強(qiáng)企業(yè)?
- 10 比蘋(píng)果偉大100倍!真正改寫(xiě)人類(lèi)歷史的智能產(chǎn)品降臨
- 高級(jí)軟件工程師 廣東省/深圳市
- 自動(dòng)化高級(jí)工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷(xiāo)售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級(jí)銷(xiāo)售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專(zhuān)家 廣東省/江門(mén)市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市