您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)在python正則表達(dá)式中是怎樣正確使用正則表達(dá)式,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
現(xiàn)在我們已經(jīng)看了一些簡單的正則表達(dá)式,那么我們實際在 Python 中是如何使用它們的呢? re 模塊提供了一個正則表達(dá)式引擎的接口,可以讓你將 REs 編譯成對象并用它們來進(jìn)行匹配。
編譯正則表達(dá)式
正則表達(dá)式被編譯成 `RegexObject` 實例,可以為不同的操作提供方法,如模式匹配搜索或字符串替換。
#!python>>> import re>>> p = re.compile('ab*')
>>> print p<re.RegexObject instance at 80b4150>re
.compile()
也接受可選的標(biāo)志參數(shù),常用來實現(xiàn)不同的特殊功能和語法變更。我們稍後將查看所有可用的設(shè)置,但現(xiàn)在只舉一個例子:
#!python>>> p = re.compile('ab*', re.IGNORECASE)RE
被做為一個字符串發(fā)送給 re.compile()。REs 被處理成字符串是因為正則表達(dá)式不是 Python 語言的核心部分,也沒有為它創(chuàng)建特定的語法。(應(yīng)用程序根本就不需要 REs,因此沒必要包含它們?nèi)ナ拐Z言說明變得臃腫不堪。)而 re 模塊則只是以一個 C 擴(kuò)展模塊的形式來被 Python 包含,就象 socket 或 zlib 模塊一樣。
將 REs 作為字符串以保證 Python 語言的簡潔,但這樣帶來的一個麻煩就是象下節(jié)標(biāo)題所講的。
[編輯] 反斜杠的麻煩
在早期規(guī)定中,正則表達(dá)式用反斜杠字符 (“\”) 來表示特殊格式或允許使用特殊字符而不調(diào)用它的特殊用法。這就與 Python 在字符串中的那些起相同作用的相同字符產(chǎn)生了沖突。
讓我們舉例說明,你想寫一個 RE 以匹配字符串 “\section”,可能是在一個 LATEX 文件查找。為了要在程序代碼中判斷,首先要寫出想要匹配的字符串。接下來你需要在所有反斜杠和元字符前加反斜杠來取消其特殊意義。
關(guān)于在python正則表達(dá)式中是怎樣正確使用正則表達(dá)式就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。