Python正則捕獲操作示例
本文實(shí)例講述了Python正則捕獲操作。分享給大家供大家參考,具體如下:
目的: 給表達(dá)式 '10+6/5-4*2' 中每個(gè)運(yùn)算符左右都加一個(gè)空格字符,變成:'10 + 6 / 5 - 4 * 2'
思路: 分組、捕獲、替換
1. 替換字符中含參數(shù) \1 (此處不能叫參數(shù),想不到叫什么,那就不管它~~)
>>> bds = '10+6/5-4*2' # 表達(dá)式 >>> m = re.sub(r'([*+-/])', ' \1 ', bds) # 注意\1左右皆有一個(gè)空格??! >>> m '10 + 6 / 5 - 4 * 2'
2. 替換字符中含參數(shù) \g<1>
>>> bds = '10+6/5-4*2' # 表達(dá)式 >>> m = re.sub(r'([*+-/])', ' \g<1> ', bds) >>> m '10 + 6 / 5 - 4 * 2'
3. 模式中也可含參數(shù) \1
>>> greed = "Hello Jack! Are you OK, Jack?" >>> m = re.sub(r"Hello (\w+)! Are you OK, \1?", "\g<1>", greed) >>> m "Hello Jack! Are you OK, Jack?"
4. 模式中也可含參數(shù) :命名組 (?P=yourname)
>>> greed = "Hello Jack! Are you OK, Jack?" >>> m = re.sub(r"Hello (?P<yourname>\w+)! Are you OK, (?P=yourname)?", "\g<yourname>", greed) >>> m "Hello Jack! Are you OK, Jack?"
PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:
JavaScript正則表達(dá)式在線測(cè)試工具:
http://tools.jb51.net/regex/javascript
正則表達(dá)式在線生成工具:
http://tools.jb51.net/regex/create_reg
更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python正則表達(dá)式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
使用python將圖片格式轉(zhuǎn)換為ico格式的示例
今天小編就為大家分享一篇使用python將圖片格式轉(zhuǎn)換為ico格式的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-10-10關(guān)于TensorFlow新舊版本函數(shù)接口變化詳解
今天小編就為大家分享一篇關(guān)于TensorFlow新舊版本函數(shù)接口變化詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02Python?excel合并居中值相同的單元格實(shí)例代碼
在工作中遇到了合并具有相同條件的單元格合并的問題,下面這篇文章主要給大家介紹了關(guān)于Python?excel合并居中值相同單元格的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-06-06python獲取http請(qǐng)求響應(yīng)頭headers中的數(shù)據(jù)的示例
這篇文章主要介紹了python獲取http請(qǐng)求響應(yīng)頭headers中的數(shù)據(jù),本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02