亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Regex > 正文

python 正則表達式 反斜杠(/)的麻煩和陷阱

2020-03-16 21:16:03
字體:
來源:轉載
供稿:網友
這里是一點小心得。 由于正則表達式使用反斜杠來轉義特殊字符,而python自身處理字符串時,反斜杠也是用于轉義字符,這樣就產生了一個雙重轉換的問題
 
 
要匹配字符串中1個反斜杠應該怎么寫正則表達式?"//",這樣行嗎?試試就知道了,re模塊拋異常了,因為"//"就是一個反斜杠,對于正則表達式解析器來說,是一個轉義字符,但是后面啥也沒有,自然就報錯了,"///"三個肯定是不行的,試試四個"////",完美匹配。 
復制代碼代碼如下:

import re 
re_str_patt = "////" 
reObj = re.compile(re_str_patt) 
str_test = "abc//cd//hh" 
print reObj.findall(str_test) 


輸出:['//', '//'] 

這里要這么理解,首先第一重轉換是字符串自身的轉義,那么"////",實際上就是表示兩個反斜杠(兩個字符),然后傳入正則表達式解析器,因為反斜杠依然是轉義字符,那么進行第二重轉換,兩個反斜杠就代表一個反斜杠,所以就能和一個反斜杠進行匹配了,那么匹配連續的兩個反斜杠,寫正則表達式時就要寫8次"/"了,相當壯觀,要匹配/d+(這個在正則表達式里面表示連續1一個以上的數字字符)這個字符串怎么寫呢? 
復制代碼代碼如下:

import re 
re_str_patt = "////d//+" 
print re_str_patt 
reObj = re.compile(re_str_patt) 
print reObj.findall("//d+") 
寫成re_str_patt = "////d/+"也行,因為/+對于字符串來說,沒有轉義意義,所以就當成一個反斜杠了。 

在python中寫正則表達式時用得最多的是raw字符串,原生字符串,什么意思?就是只有一重轉換了,沒有字符串轉換了,只在正則表達式內部進行轉換了,這樣匹配一個反斜杠的正則表達式可以這樣寫,re_str_patt = r"//",有人會想,以后寫windows的文件路徑什么的方便了,呵呵直接 path = r"c:/myforder/xx" 搞定,是的,這句沒有問題,但是如果你寫成 path = r"c:/myforder/xx/",直接報錯了,為什么?因為反斜杠雖然不作為轉義字符了,但是還是對它后面的引號(包括單引號)有影響,使這個引號不被視為字符串的終止,以為它后面還有字符,但是實際沒有,因此會報錯。其實可以反過來想raw字符串里面要表示引號怎么辦呢?,可以發現 path = r"//123/"xxx" 是可以的,那用raw字符串豈不是有局限性?不過raw在設計之初就是用來支持正則表達式的,而在正則里面反斜杠是轉義字符,所以不可能出現在字符串的末尾的,所以建議不要圖方便在其他的地方使用raw。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品视频免费在线观看| 亚洲精品中文字幕有码专区| 久久久久久一区二区三区| 欧美极品少妇与黑人| 2019国产精品自在线拍国产不卡| 91精品国产电影| 国产不卡一区二区在线播放| 色综合亚洲精品激情狠狠| www.99久久热国产日韩欧美.com| 欧美在线欧美在线| 国产精品美女久久| 日本一区二区在线播放| 国产精品久久一| 欧美在线视频在线播放完整版免费观看| 亚洲精品狠狠操| 久久99久国产精品黄毛片入口| 亚洲欧美变态国产另类| 欧美自拍视频在线观看| 九九九热精品免费视频观看网站| 这里只有精品久久| 在线观看视频亚洲| 国产在线精品播放| 久久成人精品一区二区三区| 欧美高清无遮挡| 亚洲新声在线观看| 欧美www在线| 成人黄色av网站| 欧美性20hd另类| 久久国产精品电影| 精品久久久久久中文字幕一区奶水| 91av免费观看91av精品在线| 国产亚洲xxx| 国产91久久婷婷一区二区| 538国产精品视频一区二区| 欧美成人激情视频免费观看| 亚洲精品91美女久久久久久久| 中文字幕亚洲自拍| 国产精品无码专区在线观看| 91精品中国老女人| 136fldh精品导航福利| 亚洲一区二区三区乱码aⅴ| 亚洲日韩中文字幕在线播放| 97精品国产97久久久久久免费| 色偷偷av亚洲男人的天堂| 成人国产精品av| 国产网站欧美日韩免费精品在线观看| 欧美大片欧美激情性色a∨久久| 成人高清视频观看www| 亚洲精品福利视频| 精品国产乱码久久久久久天美| 成人欧美在线观看| 国产精品电影久久久久电影网| 亚洲精品网址在线观看| 亚洲美女中文字幕| 亚洲精品美女久久久| 久久伊人色综合| 日韩av中文在线| 成人免费网站在线| 亚洲综合av影视| 亚洲欧美一区二区三区久久| 久久精品最新地址| 韩国视频理论视频久久| 日韩大胆人体377p| 全亚洲最色的网站在线观看| 久久久免费观看视频| 久久国产精品久久久久久久久久| 久久亚洲春色中文字幕| 欧美在线一区二区三区四| 国产精品电影网站| 在线观看日韩av| 亚洲精品二三区| 国产综合在线看| 一区二区三区久久精品| 九九精品在线播放| 欧美日韩中文字幕日韩欧美| 国产视频综合在线| 综合136福利视频在线| 日韩专区在线观看| 色妞一区二区三区| 久久精品久久久久电影| 亚洲人成电影网| 亚洲欧美日韩国产精品| 91sa在线看| 精品亚洲一区二区三区| 5252色成人免费视频| 国产精自产拍久久久久久蜜| 欧美老女人xx| 久久久欧美一区二区| 韩剧1988在线观看免费完整版| 91久久久在线| 欧美精品电影免费在线观看| 日韩亚洲第一页| 亚洲男人天堂视频| 国产精品久久久久久久久久| 国产成人涩涩涩视频在线观看| 亚洲综合在线小说| 国产一区二区三区直播精品电影| 青草热久免费精品视频| 亚洲精品成a人在线观看| 最近免费中文字幕视频2019| 亚洲风情亚aⅴ在线发布| 韩国美女主播一区| 国产拍精品一二三| 中文字幕综合一区| 麻豆国产va免费精品高清在线| 久久中文字幕一区| 91久热免费在线视频| 中文字幕综合在线| 日韩精品在线观看一区二区| 国产精品视频午夜| 欧美成人合集magnet| 一区二区三区 在线观看视| 国产精品美女呻吟| 亚洲人高潮女人毛茸茸| 曰本色欧美视频在线| 日韩欧美中文第一页| 国产精品 欧美在线| 九九热最新视频//这里只有精品| 97婷婷涩涩精品一区| 久久免费视频在线| 亚洲2020天天堂在线观看| 亚洲欧美制服另类日韩| 亚洲美女又黄又爽在线观看| 欧美国产在线视频| 日韩电影第一页| 97超级碰在线看视频免费在线看| 91视频88av| 国产免费一区二区三区在线能观看| 日韩在线视频观看| 成人激情电影一区二区| 日韩欧美大尺度| 国内精品久久久久影院 日本资源| 在线日韩日本国产亚洲| 亚洲一区二区三区毛片| 日韩在线观看网址| 91在线视频九色| 中国china体内裑精亚洲片| 国外成人在线播放| 亚洲自拍欧美色图| 欧美精品一二区| 午夜精品久久久久久久99黑人| 国内外成人免费激情在线视频| 亚洲精品久久久久中文字幕欢迎你| 国产日韩欧美视频在线| 欧美激情一区二区三级高清视频| 久久人人看视频| 成人国产亚洲精品a区天堂华泰| 久久久精品在线观看| 成人欧美一区二区三区黑人孕妇| 欧美国产日韩二区| 欧美黑人狂野猛交老妇| 国模精品视频一区二区三区| 久久777国产线看观看精品| 91经典在线视频| 国产精品色视频| 亚洲欧美综合区自拍另类| 国产精品视频一区二区三区四| 久久精品视频亚洲| 亚洲欧美成人在线| 国产精品中文字幕在线观看| 国产一区私人高清影院| 国产亚洲福利一区| 亚洲精品日韩欧美| 8090理伦午夜在线电影|