python的正則(一):簡單夠用的basic版
例如,下面的代碼,把所有的input替換成output:
1import re
2s = 'input wire a;input wire b;'
3result = re.sub(r'input', r'output', s, 0, re.S)
4print(result) # 'output wire a;output wire b;'
re.findall
因?yàn)閜ython中的search()函數(shù)不如perl的=~ m/.../靈活,所以re中還提供了其它函數(shù)來增強(qiáng)功能,findall()便是其中一個(gè)。
顧名思義,findall就是查找所有的匹配,函數(shù)返回一個(gè)list。語法如下:
1import re
2result = re.findall(r'pattern', 'string', option)
例如,查找所有的輸入端口:
1import re
2s = 'input wire a;input wire b;'
3result = re.findall(r'input.*?;', s, re.S)
4print(result) #['input wire a;', 'input wire b;']
我們可以看到,findall()返回了所有輸入端口的列表。而search()呢?只返回第一個(gè)匹配結(jié)果。
re.其它函數(shù)
用dir(re)看看re模塊包定義了哪些函數(shù),如下:
1import re
2dir(re)
3# [..., 'compile', 'copyreg', 'enum', 'error', 'escape',
4 'findall', 'finditer', 'fullmatch', 'functools', 'match',
5 'purge', 'search', 'split', 'sre_compile', 'sre_parse',
6 'sub', 'subn', 'template']
大家可以用help(re.xxx)來查看幫助。
總結(jié)
到此,python正則的基本用法就介紹完畢了。只要我們在實(shí)際項(xiàng)目中靈活運(yùn)用這些基本規(guī)則就可以了。
習(xí)題:
1. 利用上面介紹的正則基本規(guī)則,提取verilog module的端口。
要求:考慮verilog 2001 C風(fēng)格和和verilog95的傳統(tǒng)風(fēng)格。
2. 把verilog代碼中的高電平復(fù)位信號rst替換成低電平復(fù)位信號rst_n。
提示:除了復(fù)位名稱需要替換外,always中的復(fù)位posedge也需要同時(shí)替換成negedge;if(rst)需要替換成 if(!rst_n)。
3. 在第一題的基礎(chǔ)上,實(shí)現(xiàn)模塊實(shí)例化。
簡化一點(diǎn),外部連線的名字和端口名相同。
發(fā)表評論
請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
圖片新聞
-

落地?zé)o錫!京東首個(gè)物流機(jī)器人超級工廠來了
-

OpenAI發(fā)布的AI瀏覽器,市場為何反應(yīng)強(qiáng)烈?
-

馬云重返一線督戰(zhàn),阿里重啟創(chuàng)始人模式
-

機(jī)器人奧運(yùn)會戰(zhàn)報(bào):宇樹機(jī)器人摘下首金,天工Ultra搶走首位“百米飛人”
-

存儲圈掐架!江波龍起訴佰維,索賠121萬
-

長安汽車母公司突然更名:從“中國長安”到“辰致科技”
-

豆包前負(fù)責(zé)人喬木出軌BP后續(xù):均被辭退
-

字節(jié)AI Lab負(fù)責(zé)人李航卸任后返聘,Seed進(jìn)入調(diào)整期
最新活動(dòng)更多
-
6月30日立即申請?jiān)囉?> 【免費(fèi)試用】旭之源工業(yè)電源一一機(jī)器人的穩(wěn)定“心臟“
-
精彩回顧立即查看>> 【限時(shí)免費(fèi)】物理場仿真助力生物醫(yī)學(xué)領(lǐng)域技術(shù)創(chuàng)新
-
精彩回顧立即查看>> 【直播】 智測未來·2026海克斯康春季產(chǎn)品創(chuàng)新日
-
精彩回顧立即查看>> 【線下論壇】新唐科技×芯唐南京 2026 年度研討會
-
精彩回顧立即查看>> OFweek 2026(第十五屆)中國機(jī)器人產(chǎn)業(yè)大會
-
精彩回顧立即查看>> 維科杯· OFweek 2025中國機(jī)器人行業(yè)年度評選
推薦專題
-
2 華為,重大突破!
- 1 人形機(jī)器人“第一股”來了!宇樹科技即將上會
- 2 全球股市陷AI獨(dú)大結(jié)構(gòu)性瘋狂
- 3 AI狂歡遇上油價(jià)破百,全球股市還能漲多久? | 產(chǎn)聯(lián)看全球
- 4 DeepSeek融資500億,梁文鋒難逃資本局
- 5 谷歌2026 I/O大會完整回顧:模型依然重要,但智能體正在接管一切
- 6 全球資本,重倉中國機(jī)器人
- 7 Figure AI 交付突破350臺,陪跑特斯拉會迎來iPhone 時(shí)刻嗎?
- 8 “國產(chǎn)GPU第一股”摩爾線程首季扭虧,但造血能力仍待考驗(yàn)
- 9 Anthropic發(fā)布2028年全球AI領(lǐng)導(dǎo)力的兩種情景報(bào)告
- 10 特斯拉宣布監(jiān)督版FSD登陸中國?
- 高級軟件工程師 廣東省/深圳市
- 自動(dòng)化高級工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市


分享





