您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關python中正則表達式與模式匹配的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
提取特定內容示例
需求:找出文本中所有的電話號碼和郵件地址。設計方案:在剪貼板的文本中提取出所有與電話號碼和郵件地址格式匹配的字符串。有了需求和設計方案,現根據電話號碼和郵箱地址格式編寫正則表達式。先來看看程序代碼,再做講解。
PhoneAndEmail.py
此處電話號碼的格式是:三個數字組成的區號(可選),三個數字,四個數字,任意數空格+ext/x/ext.+任意數空格+2到5個數字組成的分機號(可選)。每個部分間以“-”號連接。郵箱地址格式:由字母、數字以及_%+-符號組成的用戶名,@符號以及.后的域名,域名由2-4個字母和數字集合組成。根據上述模式可編寫對應的正則表達式。
python的模式匹配有一個簡單固定的套路,import導入re包,regex = re.compile('''<正則表達式>''
')。<模式匹配的內容列表> = regex.findall(<待搜索字符串>)。三步搞定。編寫正則表達式時,在字符串前加r防止字符轉義。將各個部分分組并換行以提高代碼的可讀性,此時需要將re.VERBOSE作為re.compile()函數的第二個參數傳入來忽略表達式中的空白和換行。
運行結果
復制代碼首部注釋掉的文本,然后運行程序。結果如下:
前兩行打印出了匹配內容的列表,之后以自定義的統一格式打印欲搜索的內容。程序運行結果正確。本文以一個小例子測試了python正則表達式提取文本特定內容的功能,之后想嘗試利用python自動生成verilogHDL中module的例化模板。
關于“python中正則表達式與模式匹配的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。