訂閱
糾錯
加入自媒體

python的正則(一):簡單夠用的basic版

2020-07-14 17:05
ExASIC
關注

不管是哪種編程語言,學習正則是一節(jié)必修課,python也是如此。正則通常被用來做什么?處理復雜的字符串及文本。比如,提取RTL的begin end之間的內容,提取verilog的模塊端口完成自動例化,處理APR的io file等。用好正則,常?梢允掳牍Ρ。

為了更輕松愉快地學習正則,我們分成三次講解:

一、特殊字符和基本用法

二、復雜規(guī)則

三、一些實例

本文是第一次講解,介紹正則的特殊字符和基本用法。

溫故而知新

回顧一:

在《python的數據類型(三):字符串》中已經介紹過一些字符串的處理函數,先來一起回顧一下,見下圖,不記得的同學可以點擊鏈接看看。

回顧二:

與Perl語言的正則對比著學習,可以加深理解和記憶。下面是兩篇Perl正則的介紹:

Perl在ASIC中的應用——高級篇(1):Perl的正則表達式

Perl在ASIC中的應用——實戰(zhàn)篇(3):網表處理

基本語法介紹

在正則的概念里,有一個術語叫“匹配”,匹配就是利用一些特殊字符如 . * + 等來描述一個字符串。比如有字符串'abbbc',我們可以用'ab+c'來描述。又如verilog的begin end塊可以用'begin.*end'來描述。我們可以看到,匹配不僅僅描述某一個字符串,而是描述某一類字符串。

與Perl不同,Perl的正則是語言結構的一部分,而Python的正則是定義在模塊包re里,使用時需要先import re。

下面,我們先來看看python正則的基本用法,為了簡單、容易入門,這次主要介紹與Perl正則語法類似的部分。

特殊字符

. 除外的任意字符

^ 字符串的開頭

$ 字符串的結尾

 字符串邊界

B 非邊界

d 數字0到9

D 非數字

s 空白字符

S 非空白字符

w 字母a-z,A-Z,和下劃線_

W 大小寫字母和下劃線 以外的其它字符

A 字符串開頭

Z 字符串結尾

特殊字符前加轉義表示字符本身

空白字符

換行符newline 0x0a

制表符tab

回車符0x13

換頁符

垂直制表符

1  2  3  下一頁>  
聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    掃碼關注公眾號
    OFweek人工智能網
    獲取更多精彩內容
    文章糾錯
    x
    *文字標題:
    *糾錯內容:
    聯系郵箱:
    *驗 證 碼:

    粵公網安備 44030502002758號