国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

教你學會使用Python正則表達式

2019-11-25 15:52:44
字體:
來源:轉載
供稿:網友

今天寫爬蟲偶然想到了初學正則表達式時候,看過一篇文章非常不錯。檢索一下還真的找到了。

re模塊

re.search

經常用match = re.search(pat, str)的形式。因為有可能匹配不到,所以re.search()后面一般用if statement。

re.match

re.match和re.search很相似,只是re.match是從字符串的開頭開始匹配。

常用正則字符意義 a, X, 9,等字符匹配自己, 元字符不匹配自己,因為有特殊意義,比如 . ^ $ * + ? { }[ ] / | ( ) . 英文句號,匹配任意字符,不包含'/n' /w 匹配'word'字符,[a-zA-Z0-9] /W 匹配非'word'字符 /b 匹配'word'和'non-word'之間邊界 /s 匹配單個whitespace字符,space, newline, return, tab, form [/n/r/t/f] /S 匹配non-whitespace字符 /t, /n, /r 匹配tab, newline, return /d 匹配數字[0-9] ^ 匹配字符串開頭 $ 匹配字符串結尾 重復

‘+' 一或多次, ‘*' 零或多次, ‘?' 零或一次

方括號[]

[]類似于or

Square brackets can be used to indicate a set of chars, so [abc] matches 'a' or 'b' or 'c'.

Group Extraction圓括號()

有時候需要提取匹配字符的一部分,比如剛才的郵箱,我們可能需要其中的username和hostname,這時候可以用()分別把username和hostname包起來,就像r'([/w.-]+)@([/w.-]+)',如果匹配成功,那么pattern不改變,只是可以用match.group(1)和match.group(2)來username和hostname,match.group()結果不變。

findall and groups

()和findall()結合,如果包括一或多個group,就返回a list of tuples。

給re.search加^之后是一樣的。

re.sub

re.sub(pat, replacement, str)在str里尋找和pattern匹配的字符串,然后用replacement替換。replacement可以包含/1或者/2來代替相應的group,然后實現局部替換。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吉安县| 大方县| 台湾省| 孟津县| 湘乡市| 怀集县| 阳曲县| 江源县| 苍山县| 太保市| 大连市| 绥中县| 方山县| 新干县| 阳朔县| 灌南县| 德令哈市| 秀山| 常德市| 宁化县| 南木林县| 吕梁市| 淅川县| 丰台区| 麻城市| 甘德县| 将乐县| 麻栗坡县| 阿尔山市| 铅山县| 罗源县| 讷河市| 金平| 漯河市| 洛阳市| 房山区| 泰宁县| 广饶县| 凤城市| 新宾| 开鲁县|